Method and apparatus for controlling a haptic device

ABSTRACT

A method of compensating for motion of objects during a surgical procedure is provided. The method includes determining a pose of an anatomy of a patient; determining a pose of a surgical tool of a surgical device; defining a relationship between the pose of the anatomy and a position, an orientation, a velocity, and/or an acceleration of the surgical tool; associating the pose of the anatomy, the pose of the surgical tool, and the relationship; and updating the association in response to a motion of the anatomy and/or a motion of the surgical tool without interrupting operation of the surgical device during the surgical procedure.

CROSS REFERENCE TO RELATED APPLICATIONS

This application claims priority from U.S. Provisional PatentApplication Ser. No. 60/801,378, filed May 19, 2006, the disclosure ofwhich is hereby incorporated by reference herein in its entirety.

BACKGROUND OF THE INVENTION

Field of the Invention

The invention relates to a surgical system and, more particularly, tomethod and apparatus for controlling a haptic device.

Description of Related Art

Minimally invasive surgery (MIS) is the performance of surgery throughincisions that are considerably smaller than incisions used intraditional surgical approaches. For example, in an orthopedicapplication such as total knee replacement surgery, an MIS incisionlength may be in a range of about 4 to 6 inches whereas an incisionlength in traditional total knee surgery is typically in a range ofabout 6 to 12 inches. As a result of the smaller incision length, MISprocedures are generally less invasive than traditional surgicalapproaches, which minimizes trauma to soft tissue, reducespost-operative pain, promotes earlier mobilization, shortens hospitalstays, and speeds rehabilitation.

MIS presents several challenges for a surgeon. For example, in minimallyinvasive orthopedic joint replacement, the small incision size reducesthe surgeon's ability to view and access the anatomy, which increasesthe complexity of sculpting bone and assessing proper implant position.As a result, accurate placement of implants may be difficult.Conventional techniques for counteracting these problems include, forexample, surgical navigation, positioning the leg for optimal jointexposure, and employing specially designed, downsized instrumentationand complex surgical techniques. Such techniques, however, typicallyrequire a large amount of specialized instrumentation, a lengthytraining process, and a high degree of skill. Moreover, operativeresults for a single surgeon and among various surgeons are notsufficiently predictable, repeatable, and/or accurate. As a result,implant performance and longevity varies among patients.

Conventional efforts to facilitate the performance and improve theoutcome of minimally invasive and traditional orthopedic jointprocedures may include the use of a robotic surgical system. Forexample, some conventional techniques include autonomous roboticsystems, such as the ROBODOC system (formerly available from IntegratedSurgical Systems, Inc., Sacramento, Calif.). Such systems, however,typically serve primarily to enhance bone machining by performingautonomous cutting with a high speed burr. Although such systems enableprecise bone resections for improved implant fit and placement, they actautonomously (rather than cooperatively with the surgeon) and thusrequire the surgeon to cede a degree of control to the robot. Additionaldrawbacks of autonomous systems include the large size of the robot,poor ergonomics, increased incision length for adequate robot access,and limited acceptance by surgeons and regulatory agencies due to theautonomous nature of the system. Such systems also typically requirerigid clamping of the bone during registration and cutting and thus lackreal-time adaptability to the dynamic intraoperative scene.

Other conventional robotic systems include non-autonomous robots thatcooperatively interact with the surgeon, such as the ACROBOT system (TheAcrobot Company Limited, London, Great Britain). One drawback ofconventional interactive robotic systems, however, is that such systemslack the ability to adapt surgical navigation in real-time to a dynamicintraoperative environment. For example, U.S. Pat. No. 7,035,716, whichis hereby incorporated by reference herein in its entirety, discloses aninteractive robotic system programmed with a three-dimensional virtualregion of constraint that is registered to a patient. The robotic systemincludes a three degree of freedom (3 DOF) arm having a handle thatincorporates force sensors. The surgeon utilizes the handle tomanipulate the arm and move the cutting tool. Moving the arm via thehandle is required so that the force sensors can measure the force beingapplied to the handle by the surgeon. The measured force is then used tocontrol motors to assist or resist movement of the cutting tool. Forexample, during a knee replacement operation, the femur and tibia of thepatient are fixed in position relative to the robotic system. As thesurgeon applies force to the handle to move the cutting tool, theinteractive robotic system applies an increasing degree of resistance toresist movement of the cutting tool as the tool approaches a boundary ofthe virtual region of constraint. In this manner, the robotic systemguides the surgeon in preparing the bone by maintaining the tool withinthe virtual region of constraint. As with the above-described autonomoussystems, however, the interactive robotic system functions primarily toenhance bone machining. Additionally, the 3 DOF configuration of the armand the requirement that the surgeon manipulate the arm using the forcehandle results in limited flexibility and dexterity, making the roboticsystem unsuitable for certain MIS applications. The interactive roboticsystem also requires the anatomy to be rigidly restrained and therobotic system to be fixed in a gross position and thus lacks real-timeadaptability to the intraoperative scene.

Although some interactive robotic systems may not require fixation ofthe anatomy, such as the VECTORBOT system (BrainLAB, Inc., Westchester,Ill.), such systems do not enable bone sculpting but instead merelyfunction as intelligent tool guides. For example, such systems maycontrol a robotic arm to constrain movement of a drill along apre-planned drilling trajectory to enable a surgeon to drill a hole in avertebra for placement of a pedicle screw. Similarly, other roboticsystems, such as the BRIGIT system (Zimmer, Inc., Warsaw, Ind.), simplyposition a mechanical tool guide. For example, the robotic systemdisclosed in International Pub. No. WO 2005/0122916, and herebyincorporated by reference herein in its entirety, discloses a roboticarm that positions a mechanical tool guide. Using the robot-positionedtool guide, the surgeon manually manipulates a conventional surgicaltool, such as a saw or drill, to make cuts to the patient's anatomywhile the robot constrains movement of the tool guide. Although suchsystems may increase the accuracy and repeatability of the bone cuts,they are limited to performing the functions of a conventional toolguide and thus lack the ability to enable the surgeon to sculpt complexshapes in bone, as may be required for minimally invasive modularimplant designs.

Some non-robotic conventional surgical tools useful for bone sculptingdo not require fixation of the relevant anatomy, such as the PrecisionFreehand Sculptor (Blue Belt Technologies, Inc., Pittsburgh, Pa.). Onedrawback of such tools, however, is that they do not function in amanner that is transparent to the user. For example, U.S. Pat. No.6,757,582, which is hereby incorporated by reference herein in itsentirety, discloses a handheld surgical tool that can be used forsculpting a target shape into a bone. The handheld tool is a freehandcutting tool that is manipulated by the surgeon to grind away portionsof the bone to form a desired target shape in the bone. The target shapeis defined, for example, by a voxel-based model that is registered tothe physical bone. During cutting, both the bone and the cutting toolare tracked to enable a controller to determine whether the cutting toolis impinging on the boundaries of the target shape and therefore cuttingaway bone that should be left intact. If so, the controller may shut offor retract the cutting tool to protect the bone. Although the bone isprotected, the operation of the surgical tool is interrupted during thesurgical procedure and the length of time to perform the procedure mayincrease. Further, interruption of cutting may also result in a roughsurface cut. Additionally, such systems merely disable the cutting toolbased on a position of the tool relative to the target shape but do notactually constrain the surgeon's manipulation of the cutting tool, forexample, to prevent contact between the cutting tool and sensitiveanatomy, or address other adverse situations, such as when rapid motionof the anatomy is detected. Thus, such systems may not include adequatesafeguards to protect the patient. Moveover, a handheld tool thatincorporates a shutoff mechanism may be bulky and heavier than a normalfreehand tool or a gravity compensated interactive arm. Thus, it may bedifficult for a surgeon to maneuver such a handheld tool to produce finecutting motions, which makes such tools unsuited for applications thatrequire complex shapes to be sculpted in bone, especially in a minimallyinvasive surgical environment such as when cutting in the gap betweenthe femur and the tibia in a knee replacement operation withoutdislocating or distracting the joint.

In view of the foregoing, a need exists for a surgical system that isable to cooperatively interact with a surgeon to enable the surgeon tosculpt complex shapes in bone in a minimally invasive manner and thathas the ability to dynamically compensate for motion of objects in theintraoperative environment in a manner that safeguards the patient andis substantially transparent to the surgeon.

SUMMARY OF THE INVENTION

According to an aspect of the present invention, a method ofcompensating for motion of objects during a surgical procedure includesdetermining a pose of an anatomy of a patient; determining a pose of asurgical tool of a surgical device; defining a relationship between thepose of the anatomy and a position, an orientation, a velocity, and/oran acceleration of the surgical tool; associating the pose of theanatomy, the pose of the surgical tool, and the relationship; andupdating the association in response to a motion of the anatomy and/or amotion of the surgical tool without interrupting operation of thesurgical device during the surgical procedure.

According to another aspect, a surgical apparatus includes a surgicaldevice, a surgical tool coupled to the surgical device, and a computingsystem. The computing system is programmed to determine a pose of ananatomy of a patient; determine a pose of the surgical tool; define arelationship between the pose of the anatomy and a position, anorientation, a velocity, and/or an acceleration of the surgical tool;associate the pose of the anatomy, the pose of the surgical tool, andthe relationship; and update the association in response to a motion ofthe anatomy and/or a motion of the surgical tool without interruptingoperation of the surgical device during a surgical procedure.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and constitute apart of this specification, illustrate embodiments of the invention andtogether with the description serve to explain principles of theinvention.

FIG. 1 is a perspective view of an embodiment of a surgical systemaccording to the present invention.

FIG. 2A is a perspective view of an embodiment of a haptic deviceaccording to the present invention.

FIG. 2B is a perspective view of an embodiment of a haptic deviceaccording to the present invention.

FIG. 2C is a perspective view of the haptic device of FIG. 2A showing auser operating the haptic device.

FIG. 3A is a perspective view of an embodiment of an end effectoraccording to the present invention.

FIG. 3B is a side perspective view of the end effector of FIG. 3A.

FIG. 4 is a perspective view of an embodiment of an anatomy trackeraccording to the present invention.

FIG. 5 is a perspective view of an embodiment of a haptic device trackeraccording to the present invention.

FIG. 6A is a perspective view of an embodiment of an end effectortracker according to the present invention.

FIG. 6B is a perspective view of the end effector tracker of FIG. 6Aattached to the end effector of FIG. 3A.

FIG. 7 is a perspective view of an embodiment of an instrument trackeraccording to the present invention.

FIG. 8 is a perspective view of a femur and a tibia showing anembodiment of a graphical representation of a haptic object according tothe present invention.

FIG. 9 shows an embodiment of a display of a CAS system according to thepresent invention.

FIG. 10 is a block diagram of an embodiment of a haptic renderingprocess according to the present invention.

FIG. 11 is a representation of an embodiment of a 3D geometric hapticobject according to the present invention.

FIG. 12 is a block diagram of an embodiment of a haptic renderingprocess according to the present invention.

FIG. 13 is a pictorial representation illustrating coordinate systemsand transformations according to the present invention.

FIG. 14 is a block diagram of an embodiment of an occlusion detectionalgorithm according to the present invention.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

Presently preferred embodiments of the invention are illustrated in thedrawings. An effort has been made to use the same or like referencenumbers to refer to the same or like parts.

FIG. 1 shows an embodiment of a surgical system 10. The surgical system10 includes a computing system 20, a haptic device 30, and a trackingsystem 40. In one embodiment, the surgical system 10 is a roboticsurgical system as disclosed in U.S. patent application Ser. No.11/357,197, Pub. No. US 2006/0142657, filed Feb. 21, 2006, andincorporated by reference herein in its entirety. In a preferredembodiment, the surgical system 10 is the HAPTIC GUIDANCE SYSTEM™available from MAKO SURGICAL CORP.® in Ft. Lauderdale, Fla.

The computing system 20 includes hardware and software for operation andcontrol of the surgical system 10 and may comprise a computer 21, acomputer 31, a display device 23, an input device 25, and a cart 29. Thecomputing system 20 is adapted to enable the surgical system 10 toperform various functions related to surgical planning, navigation,image guidance, and/or haptic guidance. The computer 21 is preferablycustomized for surgical planning and navigation and includes algorithms,programming, and software utilities related to general operation, datastorage and retrieval, computer aided surgery (CAS), and/or any othersuitable functionality. In contrast, the computer 31 is preferablycustomized for controlling performance, stability, and/or safety of thehaptic device 30 and includes haptic control utilities and programs thatenable the haptic device 30 to utilize data from the tracking system 40.

The haptic device 30 is a surgical device configured to be manipulatedby a user (such as a surgeon) to move a surgical tool 50 to perform aprocedure on a patient, such as sculpting a surface of a bone to receivean implant. During the procedure, the haptic device 30 provides hapticguidance to the surgeon, for example, to maintain the tool 50 within apredefined virtual boundary. As disclosed in the above-referenced Pub.No. US 2006/0142657, the virtual boundary may be defined by a virtualhaptic object that is generated by the computing system 20 andregistered to (associated with) the anatomy of the patient. The hapticobject establishes a desired relationship between the anatomy and thetool 50, such as a desired position, orientation, velocity, and/oracceleration of the tool 50 relative to the anatomy. In operation, whenthe surgeon moves the tool 50 in a manner that violates the desiredrelationship (such as when the tool 50 contacts a virtual boundary), thehaptic device 30 provides haptic guidance in the form of tactilefeedback (e.g., vibration) and/or force feedback (e.g., force and/ortorque) to the surgeon. The haptic guidance may be experienced by thesurgeon, for example, as resistance to further tool movement in thedirection of the virtual boundary. As a result, the surgeon may feel asif the tool 50 has encountered a physical object, such as a wall. Inthis manner, the virtual boundary functions as a virtual cutting guide.Thus, the surgical system 10 limits the surgeon's ability to physicallymanipulate the haptic device 30 (e.g., by providing haptic guidanceand/or a limit on user manipulation of the haptic device 30) byimplementing control parameters based on a relationship between theanatomy and a position, an orientation, a velocity, and/or anacceleration of a portion of the haptic device 30, such as the tool 50.In addition to haptic objects, the relationship may be based onpredefined parameters, such as a predefined depth that limits totaltravel of the tool 50.

Guidance from the haptic device 30 coupled with computer aided surgery(CAS) enables a surgeon to actively and accurately control surgicalactions, such as bone cutting, and delivery of localized therapies(e.g., in the brain). In orthopedic applications, the haptic device 30can be applied to the problems of inaccuracy, unpredictability, andnon-repeatability in bone preparation by guiding the surgeon in propersculpting of bone to thereby enable precise, repeatable bone resectionswhile maintaining intimate involvement of the surgeon in the bonepreparation process. Moreover, because the haptic device 30 guides thesurgeon during cutting, the skill level of the surgeon is less critical.Thus, surgeons of varying skill degree and experience are able performaccurate, repeatable bone resections.

The haptic device 30 may be robotic, non-robotic, or a combination ofrobotic and non-robotic systems. In one embodiment, the haptic device 30is a robotic system as disclosed in the above-referenced Pub. No. US2006/0142657. In a preferred embodiment, the haptic device is the HAPTICGUIDANCE SYSTEM™ available from MAKO SURGICAL CORP.® in Ft. Lauderdale,Fla. As shown in FIG. 2A, the haptic device 30 includes a base 32, anarm 33, an end effector 35, a user interface 37, and a platform 39.

The base 32 provides a foundation for the haptic device 30. The base 32supports the arm 33 and may also house other components, such as, forexample, controllers, amplifiers, actuators, motors, transmissioncomponents, clutches, brakes, power supplies, sensors, computerhardware, and/or any other well-known robotic component.

The arm 33 is disposed on the base 32 and is adapted to enable thehaptic device 30 to be manipulated by the user. The arm 33 may be anarticulated linkage such as serial device, a parallel device, or ahybrid device (i.e., a device having both serial and parallel elements).In a preferred embodiment, the arm 33 is a serial device having four ormore degrees of freedom (axes of movement), such as, for example, arobotic arm known as the “Whole-Arm Manipulator” or WAM™ currentlymanufactured by Barrett Technology, Inc. The arm 33 includes a proximalend disposed on the base 32 and a distal end that includes the endeffector 35 to which the surgical tool 50 is coupled. To manipulate thehaptic device 30, a user 160 simply grasps and moves the arm 33 (asshown in FIG. 2C), which results in movement of the tool 50. In oneembodiment, the arm 33 includes a first segment 33 a, a second segment33 b, and a third segment 33 c as shown in FIG. 2A. The first segment 33a and the second segment 33 b are connected at a first joint 33 d (e.g.,a shoulder joint), and the second segment 33 b and the third segment 33c are connected at a second joint 33 e (e.g., an elbow joint). As shownin FIG. 2B, the arm 33 has a first degree of freedom DOF₁, a seconddegree of freedom DOF₂, a third degree of freedom DOF₃, and a fourthdegree of freedom DOF₄. Dexterity of the arm 33 may be enhanced byadding additional degrees of freedom. For example, the arm 33 mayinclude a wrist 36 disposed on the third segment 33 c as shown in FIG.2A. The wrist 36 includes one or more degrees of freedom, such as adegree of freedom DOF₅, to augment the degrees of freedom DOF₁, DOF₂,DOF₃, and DOF₄. The wrist 36 may be, for example, a one or three degreeof freedom WAM™ wrist manufactured by Barrett Technology, Inc. or a onedegree of freedom direct drive wrist.

To enable the haptic device 30 to provide haptic guidance to the user,the arm 33 incorporates a drive system, such as the drive systemdisclosed in the above-referenced Pub. No. US 2006/0142657. The drivesystem includes actuators (e.g., motors) and a mechanical transmission.In an exemplary embodiment, the drive system includes a high-speed cabletransmission and zero backlash, low friction, cabled differentials. Thecable transmission may be, for example, a cable transmission used in theWAM™ robotic arm currently manufactured by Barrett Technology, Inc.and/or a cable transmission as described in U.S. Pat. No. 4,903,536,which is hereby incorporated by reference herein in its entirety.

The arm 33 also includes position sensors (not shown) for determining aposition and an orientation (i.e., pose) of the arm 33, such as encodersand/or resolvers mounted on the joints 33 d and 33 e and/or encodersand/or resolvers mounted on a shaft of each motor.

The end effector 35 comprises a working end of the haptic device 30. Asshown in FIG. 2A, the end effector 35 includes a proximal portionconnected to the arm 33 and a distal portion that includes the tool 50and a tool holder 51. The tool 50 may be, for example, a surgical tool(such as a burr, drill, probe, saw, etc.). In one embodiment, the tool50 and the tool holder 51 comprise an electric, air cooled surgical toolcurrently manufactured by ANSPACH® and having product numbers EMAX2(motor), L-2SB (2 mm fluted ball), L-4B (4 mm fluted ball), L-6B (6 mmfluted ball), and L-1R (12) (1.2 mm×12.8 mm fluted router). The surgicaltool may also include additional components such as a user input device(e.g., a foot pedal such as ANSPACH® product number EMAX2-FP), a controlconsole (e.g., ANSPACH® product number SC2000), and the like. Further,the tool 50 may be integrated into the surgical system 10 such thatcutting information (e.g., velocity, torque, temperature, etc.) isavailable to the surgical system 10 and/or such that the surgical system10 can control operation of the tool 50.

In one embodiment, the tool holder 51 includes a holding device 151configured to couple the surgical tool 50 to the haptic device 30. Asshown in FIG. 3B, the holding device 151 comprises a first member 151 aand a second member 151 b. The first member 151 a is configured toreceive at least a portion of the tool 50 (e.g., a shaft 50 a of thetool 50) and to engage the second member 151 b. The second member 151 bis configured to couple the first member 511 a and the surgical tool 50to the end effector 35 of the haptic device 30, to maintain the tool 50in a desired position when the tool 50 is coupled to the end effector35, and to substantially prevent movement of the tool 50 relative to theend effector 35. As shown in FIGS. 3A and 3B, the first member 151 a ofthe holding device 151 may be a sleeve or sheath sized to receive ashaft 50 a of the tool 50 and to be inserted into the second member 151b. For example, in one embodiment, the first member 151 a has a diameterin a range of about 5.9 mm to about 6.1 mm at a first end (i.e., an endinto which the shaft 50 a is inserted) and a diameter of about 11.38 mmto about 11.48 mm at a second end (i.e., an end that is inserted intothe second member 151 b). The second member 151 b of the holding device151 may be any connector suitable for coupling a first object (e.g., atool or work piece) to a second object (e.g., a machine or robot) in amanner that is secure, stable, and enables repeatable positioning of thefirst object relative to the second object. In one embodiment, thesecond member 151 b includes a collet. In other embodiments, the secondmember 151 b may include threads, clamping devices, set screws, and thelike.

In one embodiment, the holding device 151 is configured so that an axisof the holding device 151 corresponds to a desired axis of the tool 50when the holding device 151 is disposed on the haptic device 30. Forexample, in one embodiment (shown in FIGS. 3A and 3B), the second member151 b of the holding device 151 includes a connector comprising a collet151 c, a collet knob 151 d, and a collar nut 151 e. In this embodiment,the collet 151 c includes a male morse taper feature, and the aperture52 of the end effector 35 includes a corresponding female morse taperfeature. The collet 151 c is mated to the aperture 52 and tightened ontothe end effector 35 with the collar nut 151 e. This taper connectionestablishes an axis H-H that corresponds to the desired axis of thesurgical tool 50. As shown in FIG. 3B, when the tool 50 is coupled tothe end effector 35 via the holding device 151, an axis of the tool 50aligns with the axis H-H. In this manner, the holding device 151 alignsthe tool 50 in a desired configuration relative to the end effector 35.After the collet 151 c is mated with the end effector 35, the firstmember 151 a is inserted into the collet 151 c. The shaft 50 a of thetool 50 is inserted into the first member 151 a until a tip 50 b of thetool 50 is in a desired position. Once the tip 50 b is properlypositioned, the collet knob 151 d is tightened down onto the fingers ortangs of the collet 151 a. The clamping force exerted on the firstmember 151 a and the tool 50 by the collet fingers secures the firstmember 151 a and the tool 50 in place. In this manner, the holdingdevice 151 substantially prevents movement of the first member 151 a andthe tool 50 relative to the end effector 35. Once installed on the endeffector 35, a portion 50 c (shown in FIG. 3B) of the tool 50 projectsfrom the end effector 35 and can be attached to a motor for driving thetool 50. Additionally, because the holding device 151 and the tool 50can be decoupled from the end effector 35, the components can be removedas necessary for replacement, sterilization, and the like.

The user interface 37 enables physical interaction between the user andthe haptic device 30. The interface 37 is configured so that the usercan grasp the interface 37 and manipulate the tool 50 whilesimultaneously receiving haptic guidance from the haptic device 30. Theinterface 37 may be a separate component affixed to the haptic device 30(such as a handle or hand grip) or may simply be part of the existingstructure of the haptic device 30 (such as the arm 33). Because theinterface 37 is affixed to or is an integral part of the haptic device30, any haptic feedback output by the haptic device 30 is transmitteddirectly to the user when the user is in contact with the interface 37.Thus, the interface 37 advantageously enables the haptic device 30 tohold the tool 50 cooperatively with the surgeon (as shown in FIG. 2C)and to simultaneously provide haptic guidance.

The tracking system 40 of the surgical system 10 is configured to trackone or more objects during a surgical procedure to detect movement ofthe objects. As described in the above-referenced Pub. No. US2006/0142657. The tracking system 40 includes a detection device thatobtains a pose (i.e., position and orientation) of an object withrespect to a coordinate frame of reference of the detection device 41.As the object moves in the coordinate frame of reference, the detectiondevice tracks the object. A change in the pose of the object indicatesthat the object has moved. In response, the computing system 20 can makeappropriate adjustments to the control parameters for the haptic device30. For example, when the anatomy moves, the computing system 20 canmake a corresponding adjustment to a virtual haptic object (e.g., avirtual cutting boundary) that is registered to the anatomy. Thus, thevirtual cutting boundary moves along with the anatomy.

Pose data from the tracking system 40 is also used to register (i.e.,map or associate) coordinates in one space to those in another space toachieve spatial alignment, for example, using a coordinatetransformation process. Registration may include any known registrationtechnique, such as, for example, image-to-image registration;image-to-physical space registration; and/or combined image-to-image andimage-to-physical-space registration. In one embodiment, the anatomy andthe tool 50 (in physical space) are registered to a representation ofthe anatomy (such as an image 614 in image space) as disclosed in theabove-referenced Pub. No. US 2006/0142657 and shown in FIG. 9. Based onregistration and tracking data, the surgical system 10 can determine (a)a spatial relationship between the anatomy and the image 614 and (b) aspatial relationship between the anatomy and the tool 50 so that thecomputing system 20 can superimpose, and continually update, a virtualrepresentation 616 of the tool 50 on the image 614. The relationshipbetween the virtual representation 616 and the image 614 issubstantially identical to the relationship between the tool 50 and theactual anatomy.

The tracking system 40 may be any tracking system that enables thesurgical system 10 to continually determine (or track) a pose of therelevant anatomy of the patient and a pose of the tool 50 (and/or thehaptic device 30). For example, the tracking system 40 may comprise anon-mechanical tracking system, a mechanical tracking system, or anycombination of non-mechanical and mechanical tracking systems suitablefor use in a surgical environment.

In one embodiment, the tracking system 40 includes a non-mechanicaltracking system as shown in FIG. 1. The non-mechanical tracking systemis an optical tracking system that comprises a detection device 41 and atrackable element (or tracker) that is configured to be disposed on atracked object and is detectable by the detection device 41. In oneembodiment, the detection device 41 includes a visible light-baseddetector, such as a micron tracker, that detects a pattern (e.g., acheckerboard pattern) on a tracking element. In another embodiment, thedetection device 41 includes a stereo camera pair sensitive to infraredradiation and positionable in an operating room where the surgicalprocedure will be performed. The tracker is configured to be affixed tothe tracked object in a secure and stable manner and includes an arrayof markers (e.g., an array S1 in FIG. 4) having a known geometricrelationship to the tracked object. As is well known, the markers may beactive (e.g., light emitting diodes or LEDs) or passive (e.g.,reflective spheres, a checkerboard pattern, etc.) and have a uniquegeometry (e.g., a unique geometric arrangement of the markers) or, inthe case of active, wired markers, a unique firing pattern. Inoperation, the detection device 41 detects positions of the markers, andthe surgical system 10 (e.g., the detection device 41 using embeddedelectronics) calculates a pose of the tracked object based on themarkers' positions, unique geometry, and known geometric relationship tothe tracked object. The tracking system 40 includes a tracker for eachobject the user desires to track, such as an anatomy tracker 43 (totrack patient anatomy), a haptic device tracker 45 (to track a global orgross position of the haptic device 30), an end effector tracker 47 (totrack a distal end of the haptic device 30), and an instrument tracker49 (to track an instrument held manually by the user).

The anatomy tracker 43 is disposed on the patient's anatomy and enablesthe anatomy to be tracked by the detection device 41. The anatomytracker 43 includes a fixation device for attachment to the anatomy,such as a bone pin, surgical staple, screw, clamp, intramedullary rod,or the like. In one embodiment, the anatomy tracker 43 is configured foruse during knee replacement surgery to track a femur F and a tibia T ofa patient. In this embodiment, as shown in FIG. 1, the anatomy tracker43 includes a first tracker 43 a adapted to be disposed on the femur Fand a second tracker 43 b adapted to be disposed on the tibia T. Asshown in FIG. 4, the first tracker 43 a includes a fixation devicecomprising bone pins P, a clamp 400, and a unique array S1 of markers(e.g., reflective spheres). The second tracker 43 b is identical to thefirst tracker 43 a except the second tracker 43 b is installed on thetibia T and has its own unique array of markers. When installed on thepatient, the first and second trackers 43 a and 43 b enable thedetection device 41 to track a position of the femur F and the tibia T.

The haptic device tracker 45 is disposed on the haptic device 30 andenables the surgical system 10 to monitor a global or gross position ofthe haptic device 30 in physical space so that the surgical system 10can determine whether the haptic device 30 has moved relative to otherobjects in the surgical environment, such as the patient, or whether thedetection device 41 has moved relative to the haptic device 30. Suchinformation is important because the tool 50 is attached to the hapticdevice 30. For example, if the user repositions or inadvertently bumpsthe haptic device 30 while cutting the femur F with the tool 50, thetracking system 40 will detect movement of the haptic device tracker 45.In response, the surgical system 10 can make appropriate adjustments toprograms running on the computing system 20 to compensate for movementof the haptic device 30 (and the attached tool 50) relative to the femurF. As a result, integrity of the bone preparation process is maintained.

The haptic device tracker 45 includes a unique array S3 of markers(e.g., reflective spheres) and is adapted to be mounted on the base 32of the haptic device 30 in a manner that enables the tracker 45 to besecured in a fixed position relative to the base 32. The fixed positionis calibrated to the haptic device 30 during a haptic deviceregistration calibration (discussed below) so that the surgical system10 knows where the tracker 45 is located relative to the base 32. Oncecalibrated, the fixed position is maintained during the surgicalprocedure. In one embodiment, as shown in FIGS. 2A and 5, the tracker 45is mounted on an arm 34 having a proximal end connected to the base 32(e.g., via screws, rivets, welding, clamps, magnets, etc.) and a distalend that carries the array S3 of markers. The arm 34 may include one ormore support members (e.g., brackets, struts, links, etc.) having arigid structure so that the haptic device tracker 45 is fixed in apermanent position with respect to the haptic device 30. Preferably,however, the arm 34 is adapted for adjustability so that the array S3 ismoveable relative to the haptic device 30. Thus, the array S3 can bepositioned independently of the base 32 before being secured in a fixedposition. As a result, a position of the array S3 can be customized foreach surgical case (e.g., based on patient size, operating table height,etc.) and set so as not to impede the surgeon during a surgicalprocedure.

Adjustability may be imparted to the arm 34 in any known manner (e.g.,an articulating linkage, a flexible neck, etc.). For example, in theembodiment of FIG. 5, the arm 34 includes a ball joint 34 b on which thehaptic device tracker 45 is disposed. The ball joint 34 b includes alocking mechanism actuated by a handle 34 a. In operation, the user mayunscrew the handle 34 a to release the ball joint 34 b, manipulate theball joint 34 b until the tracker 45 is in a desired position, andtighten the handle 34 a until the ball joint 34 b is fixedly secured. Inthis manner, the tracker 45 may be fixed in the desired position. As analternative to securing the tracker 45 in a fixed position andcalibrating the fixed position to the haptic device 30, the arm 34 mayinclude position sensors (e.g., encoders) similar to the positionsensors of the arm 33 to provide measurements of a pose of the arm 34relative to the base 32. When position sensors are incorporated into thearm 34, the haptic device registration calibration (discussed below) maybe eliminated because the surgical system 10 can determine the locationof the tracker 45 with respect to the base 32 based on the pose of thearm 34 provided by the position sensors.

The end effector tracker 47 enables the surgical system 10 to determinea pose of a distal end of the haptic device 30. The tracker 47 ispreferably configured to be disposed on the haptic device 30 at a distalend of the arm 33 (e.g., on the segment 33 c, the end effector 35, thetool 50, and/or the tool holder 51). In one embodiment (shown in FIG.6B), the tracker 47 is disposed on the tool holder 51. As shown in FIG.6A, the tracker 47 may include a unique array S4 of markers (e.g.,reflective spheres) and may be adapted to be affixed to the hapticdevice 30 in any known manner, such as, for example, with a clampingdevice, threaded connection, magnet, or the like. In the embodiment ofFIG. 6A, the tracker 47 is affixed to the haptic device 30 with a clamp1500. The clamp 1500 may be formed integrally with the array S4 oraffixed to the array S4 in any conventional manner, such as withmechanical hardware, adhesive, welding, and the like. The clamp 1500includes a first portion 1505, a second portion 1510, and a thumbscrew1515. The first and second portions 1505 and 1510 are shaped to receivea portion of the haptic device 30, such as a cylindrical portion of thetool 50 and/or the tool holder 51. In one embodiment, the cylindricalportion is the first member 151 a of the holding device 151 of the toolholder 51 (shown in FIGS. 3A and 3B). To enable the clamp 1500 to graspthe cylindrical portion, the first portion 1505 may have a V-shapedgroove (shown in FIG. 6A) and the second portion 1510 may have a planarsurface so that the first and second portions 1505 and 1510 can securelyreceive the cylindrical portion when tightened together. In oneembodiment, the clamp 1500 is configured so that the surgical system 10can determine a point and/or an axis of the haptic device 30 at alocation where the tracker 47 is disposed on the haptic device 30. Forexample, when the tracker 47 is secured to the cylindrical portion withthe clamp 1500, the surgical system 10 is able to determine a pointand/or an axis of the cylindrical portion (e.g., an axis H-H shown inFIG. 3B) based on the geometry of the tracker 47, specifically, thegeometric relationship between the reflective spheres on the array S4and the V-shaped groove on the first portion 1505 of the clamp 1500.

To install the end effector tracker 47 on the haptic device 30, thefirst and second portions 1505 and 1510 of the clamp 1500 are disposedaround a cylindrical portion of the tool 50 or the tool holder 51 andtightened together using the thumbscrew 1515. The effector 47 mayinclude a feature configured to aid in positioning the tracker 47relative to the end effector 35. For example, the tracker 47 may includeone or more surfaces 1503 (shown in FIG. 6B) that are adapted to abutcorresponding surfaces on the haptic device 30. In one embodiment, thesurfaces 1503 are configured to abut a portion of the tool holder 51,such as fingers or tangs of the collet 151 c as shown in FIG. 6B. Inoperation, the user slides the clamp 1500 along the cylindrical portionof the tool holder 51 until the surfaces 1503 abut the fingers or tangsof the collet 151 c and then tightens the thumb screw 1515. The tracker47 may be removed by loosening the thumbscrew 1515 and sliding thetracker 47 off the cylindrical portion. In this manner, the tracker 47may be removably and repeatably secured in a known position relative tothe end effector 35. The tracker 47 may also include a feature, such asa divot 47 a shown in FIG. 6B, to facilitate orientation of the tracker47 relative to the end effector 35, for example, to avoid installing thetracker 47 upside down. After installation of the tracker 47, the usermay reorient the tracker 47 (if desired) by loosening the clamp 1500 andswiveling the tracker 47 around the cylindrical portion. Thus, the clamp1500 enables adjustability of the tracker 47 relative to the endeffector 35. Adjustability is particularly useful during the hapticdevice registration calibration (described below) to orient the tracker47 to face the detection device 41 to thereby improve tracking accuracyand visibility.

Alternatively, instead of a separate end effector tracker 47, the hapticdevice 30 may incorporate fiducials on the end effector 35. Thefiducials may be similar to the unique array S4 of markers and mayinclude, for example, reflective spheres. In contrast to the endeffector tracker 47, the fiducials are not removed from the end effector35 prior to surgery. One disadvantage of not removing the fiducials isthat blood and debris may contaminate the fiducials during surgery,which occludes the fiducials and degrades their ability to reflect lightto the detection device 41. Thus, the fiducials preferably include asmooth plastic coating so that any surface contamination can be easilyremoved. The fiducials should be mounted in a location on the endeffector 35 that is visible to the detection device 41 during the hapticdevice registration calibration (described below) but that will notimpede the surgeon during the surgical procedure. For example, thefiducials may be mounted on an underside of the end effector 35.Alternatively, the fiducials may be mounted on an adjustable linkagethat can be positioned in a registration calibration position wherethere is a clear line of site between the fiducials and the detectiondevice 41 and a stowed position where the fiducials will not hamper thesurgeon during the surgical procedure.

In one embodiment, the end effector tracker 47 is used only during thehaptic device registration calibration (discussed below) and is removedprior to performance of the surgical procedure. In this embodiment, theend effector tracker 47 is disposed on the end effector 35 and thehaptic device tracker 45 is mounted to the base 32 (e.g., via theadjustable arm 34) so that a position of the haptic device tracker 45with respect to the haptic device 30 is adjustable. Because the positionof the haptic device tracker 45 is adjustable, the surgical system 10does not know the location of the haptic device tracker 45 relative tothe haptic device 30. To determine the geometric relationship betweenthe haptic device 30 and the haptic device tracker 45, the registrationcalibration process utilizes the end effector tracker 47 (as describedbelow). Although the end effector tracker 47 may remain on the hapticdevice 30 for the surgical procedure and can be continuously monitored,it is advantageous to remove the end effector tracker 47 when theregistration calibration is complete to prevent the tracker 47 fromimpeding the surgeon during the surgical procedure. Another advantage ofremoving the tracker 47 is that movement of the tracker 47 during thesurgical procedure may result in degraded performance of the surgicalsystem 10 due to delays or limited bandwidth as the tracking system 40detects and processes movement of the tracker 47.

In an alternative embodiment, the end effector tracker 47 may beeliminated. In this embodiment, the haptic device tracker 45 is fixed ina permanent position on the haptic device 30. Because the haptic devicetracker 45 is permanently fixed on the haptic device 30, therelationship between the haptic device tracker 45 and the coordinateframe of the haptic device 30 is known. Accordingly, the surgical system10 does not need the end effector tracker 47 for the registrationcalibration to establish a relationship between the haptic devicetracker 45 and the coordinate frame of the haptic device 30. In thisembodiment, the haptic device tracker 45 may be rigidly mounted on thehaptic device 30 in any position that permits the tracking system 40 tosee the array S3 of the haptic device tracker 45, that is close enoughto the surgical site so as not to degrade accuracy, and that will nothinder the user or interfere with other personnel or objects in thesurgical environment.

In another alternative embodiment, the haptic device 30 is firmly lockedin position. For example, the haptic device 30 may be bolted to a floorof the operating room or otherwise fixed in place. As a result, theglobal or gross position of the haptic device 30 does not changesubstantially so the surgical system 10 does not need to track theglobal or gross position of the haptic device 30. Thus, the hapticdevice tracker 45 may be eliminated. In this embodiment, the endeffector tracker 47 may be used to determine an initial position of thehaptic device 30 after the haptic device 30 is locked in place. Oneadvantage of eliminating the haptic device tracker 45 is that thesurgical system 10 does not need to include monitoring data for thehaptic device tracker 45 in the control loop. As a result, noise anderrors in the control loop are reduced. Alternatively, the haptic devicetracker 45 may be retained but is monitored only for detecting excessivemotion of the base 32 or the tracking system 40 rather than beingincluded in the control loop.

In another alternative embodiment, the tracking system 40 is attached tothe haptic device 30 in a permanently fixed position. For example, thetracking system 40 (including the detection device 41) may be mounteddirectly on the haptic device 30 or connected to the haptic device 30via a rigid mounting arm or bracket so that the tracking system 40 isfixed in position with respect to the haptic device 30. In thisembodiment, the haptic device tracker 45 and the end effector tracker 47may be eliminated because a position of the tracking system 40 relativeto the haptic device 30 is fixed and can be established during acalibration procedure performed, for example, during manufacture or setup of the haptic device 30.

In another alternative embodiment, the tracking system 40 is attached tothe haptic device 30 in an adjustable manner. For example, the trackingsystem 40 (including the detection device 41) may be connected to thehaptic device 30 with an arm, such as the adjustable arm 34 (describedabove in connection with the haptic device tracker 45) so that thetracking system 40 is moveable from a first position to a secondposition relative to the haptic device 30. After the arm and thetracking system 40 are locked in place, a calibration can be performedto determine a position of the tracking system 40 relative to the hapticdevice 30. A calibration to determine the position of the trackingsystem 40 relative to the haptic device 30 may be performed, forexample, by viewing the end effector tracker 47 with the tracking system40.

The instrument tracker 49 is adapted to be coupled to an instrument 150that is held manually in the hand of the user. The instrument 150 maybe, for example, a probe, such as a registration probe. As shown in FIG.7, the instrument tracker 49 may comprise a unique array S5 of markers(e.g., reflective spheres) formed integrally with the instrument 150 oraffixed to the instrument 150 in any known manner, such as withmechanical hardware, adhesive, welding, a threaded connection, aclamping device, a clip, or the like. When the instrument tracker 49 isremovably connected to the instrument 150, such as with a clip or aclamping device, the instrument tracker 49 should be calibrated to theinstrument 150 to determine a relationship between the instrumenttracker 49 and a geometry of the instrument 150. Calibration may beaccomplished in any suitable manner, such as with a tool calibratorhaving a divot or a V-groove (e.g., as described in U.S. PatentApplication Pub. No. US 2003/0209096, which is hereby incorporated byreference herein in its entirety). Knowing a geometric relationshipbetween the array S5 and the instrument 150, the surgical system 10 isable to calculate a position of a tip of the instrument 150 in physicalspace. Thus, the instrument 150 can be used to register an object bytouching a tip of the instrument 150 to a relevant portion of theobject. For example, the instrument 150 may be used to register a boneof the patient by touching landmarks or points on the surface of thebone.

The tracking system 40 may additionally or alternatively include amechanical tracking system. In contrast to the non-mechanical trackingsystem (which includes a detection device 41 that is remote from thetrackers 43, 45, 47, and 49), a mechanical tracking system may beconfigured to include a detection device (e.g., an articulating linkagehaving joint encoders) that is physically connected to the trackedobject. The tracking system 40 may include any known mechanical trackingsystem, such as a mechanical tracking system as described in U.S. Pat.Nos. 6,033,415, 6,322,567, and/or Pub. No. US 2006/0142657, each ofwhich is hereby incorporated by reference herein in its entirety, or afiber optic tracking system.

In operation, the computing system 20, the haptic device 30, and thetracking system 40 cooperate to enable the surgical system 10 to providehaptic guidance to the user during a surgical procedure. The hapticguidance manifests as a result of the user's interaction with a virtualenvironment generated by a haptic rendering process. The hapticrendering process may include any suitable haptic rendering process,such as, for example, a haptic rendering process as described in U.S.Pat. No. 6,111,577, which is hereby incorporated by reference herein inits entirety. In a preferred embodiment, the haptic rendering processincludes a haptic rendering algorithm as disclosed in theabove-referenced Pub. No. US 2006/0142657 and/or U.S. patent applicationSer. No. 11/646,204, filed Dec. 27, 2006, and incorporated by referenceherein in its entirety. In the preferred embodiment, the surgical system10 employs point-based haptic interaction where only a virtual point, orhaptic interaction point (HIP), interacts with virtual objects in thevirtual environment. The HIP corresponds to a physical point on thehaptic device 30, such as, for example, a tip of the tool 50. The HIP iscoupled to the physical point on the haptic device 30 by a virtualspring/damper model. The virtual object with which the HIP interacts maybe, for example, a haptic object 705 (shown in FIG. 11) having a surface707 and a haptic force normal vector F_(n). A penetration depth d_(i) isa distance between the HIP and the nearest point on the surface 707. Thepenetration depth d_(i) represents the depth of penetration of the HIPinto the haptic object 705.

One embodiment of a haptic rendering process is represented generally inFIG. 10. In operation, position sensors (block 2502) of the hapticdevice 30 (block 2500) provide data to a forward kinematics process(block 2504). Output of the forward kinematics process is input to acoordinate transformation process (block 2506). A haptic renderingalgorithm (block 2508) receives data from the coordinate transformationprocess and provides input to a force mapping process (block 2510).Based on the results of the force mapping process, actuators (block2512) of the haptic device 30 are actuated to convey an appropriatehaptic wrench (i.e., force and/or torque) to the user.

In one embodiment, the surgical system 10 includes a haptic renderingprocess as shown in FIG. 12. The dashed lines of FIG. 12 correspond tothe blocks of FIG. 10. As shown in FIG. 12, the coordinatetransformation process 2506 utilizes registration and trackinginformation for the anatomy and the haptic device 30 and input from theforward kinematics process 2504 to determine coordinate transformations(or transforms) that enable the surgical system 10 to calculate alocation of an endpoint of the haptic device 30 relative to specifiedportions of the anatomy. For example, the coordinate transformationprocess 2506 enables the surgical system 10 to calculate a location ofthe tip of the tool 50 relative to desired cut surfaces on the anatomy.

As shown in FIG. 13, the coordinate transformation process 2506 includesdefining various coordinate systems, including a first coordinate systemX₁ associated with the detection device 41 of the tracking system 40, asecond coordinate system X₂ associated with the anatomy (e.g., a bone oran anatomy tracker 43 a or 43 b affixed to the bone), a third coordinatesystem X₃ associated with the haptic device tracker 45, a fourthcoordinate system X₄ associated with the haptic device 30 (e.g., thebase 32 of the haptic device), and a fifth coordinate system X₅associated with a virtual environment (e.g., a representation of theanatomy including a virtual (or haptic) object defining desired cutsurfaces for installation of an implant). Coordinate transformations arethen determined that enable coordinates in one coordinate system to bemapped or transformed to another coordinate system.

A first coordinate transformation T₁ (shown in FIGS. 12 and 13) is atransformation from the coordinate system of the anatomy (the secondcoordinate system X₂) to the coordinate system of the virtualenvironment (the fifth coordinate system X₅). Thus, in embodiments wherethe virtual environment includes a virtual object defining a shape of animplant, the transformation T₁ relates the physical anatomy to thedesired cut locations for installation of the implant. As represented byblock 4500 in FIG. 12, the transformation T₁ may be determined byregistering the physical anatomy of the patient to a representation ofthe anatomy (as described below) and positioning the virtual objectrelative to the representation of the anatomy. Positioning the virtualobject relative to the representation of the anatomy may beaccomplished, for example, using any suitable planning process, such asan implant planning process as disclosed in the above-referenced Pub.No. US 2006/0142657. For example, a virtual model that defines a virtualcutting boundary (such as a model of an implant to be implanted in thebone) may be positioned relative to the representation of the anatomy(such as an image of the anatomy) displayed on the display device 23.

A second coordinate transformation T₂ (shown in FIGS. 12 and 13) is atransformation from the coordinate system of the detection device 41(the coordinate system X₁) to the coordinate system of the anatomy (thecoordinate system X₂). As represented by block 4502 in FIG. 12, thetracking system 40 outputs the transformation T₂ during a surgicalprocedure as the detection device 41 monitors motion of the anatomy.Because the detection device 41 continuously monitors the anatomy, thetransformation T₂ is regularly updated to reflect motion of the anatomy.

A third coordinate transformation T₃ (shown in FIGS. 12 and 13) is atransformation from the coordinate system of the haptic device tracker45 (the third coordinate system X₃) to the coordinate system of thehaptic device 30 (the fourth coordinate system X₄). In this embodiment,the haptic device tracker 45 is coupled to the base 32 of the hapticdevice 30 via the arm 34 (as shown in FIG. 2A). Thus, the transformationT₃ relates the location of the haptic device tracker 45 to the base 32of the haptic device 30. As represented by block 4504 in FIG. 12, thetransformation T₃ may be determined, for example, by performing thehaptic device registration calibration as described below.

A fourth coordinate transformation T₄ (shown in FIGS. 12 and 13) is atransformation from the coordinate system of the detection device 41(the coordinate system X₁) to the coordinate system of the haptic devicetracker 45 (the coordinate system X₃). As represented by block 4506 inFIG. 12, the tracking system 40 outputs the transformation T₄ during asurgical procedure as the detection device 41 monitors motion of thehaptic device tracker 45. Because the detection device 41 continuouslymonitors the haptic device tracker 45, the transformation T₄ isregularly updated to reflect motion of the haptic device tracker 45.

A fifth coordinate transformation T₅ (shown in FIGS. 12 and 13) is atransformation that results from the forward kinematics process 2504.The forward kinematics process 2504 computes a Cartesian endpointposition of the arm 33 of the haptic device 30 as a function of jointangle. As represented by blocks 4508 and 4510 in FIG. 12, the forwardkinematics process 2504 receives input from position sensors in thejoints of arm 33. Based on this input, the forward kinematics process2504 computes a position of a distal end of the arm 33 relative to thebase 32 of the haptic device 30. Based on a known geometric relationshipbetween the tool 50 and the distal end of the arm 33, a position of thetip of the tool 50 relative to the base 32 of the haptic device 30 canthen be computed. Because the position sensors continuously monitorjoint position, the transformation T₅ is regularly updated to reflectmotion of the arm 33.

A sixth coordinate transformation T₆ (shown in FIGS. 12 and 13) isobtained by multiplying the first through fifth coordinatetransformations together in an appropriate sequence. In one embodiment,T₆=T₁ ⁻¹T₂ ⁻¹T₄T₃ ⁻¹T₅. The result of the transformation T₆ (representedby a variable x in FIG. 12) is a location of a virtual point, or hapticinteraction point (HIP), relative to the virtual environment. In thisembodiment, the HIP corresponds to a location of a physical point on thehaptic device 30 (e.g., the tip of the tool 50) relative to the desiredcut surfaces defined by the virtual object. Because motion of theanatomy, the haptic device tracker 45, and the arm 33 of the hapticdevice 30 are continuously monitored, the transformation T₆ is regularlyupdated to reflect motion of the anatomy, the base 32 of the hapticdevice 30, and the arm 33 of the haptic device 30. In this manner, thesurgical system 10 compensates for motion of objects during a surgicalprocedure.

One advantage of the present invention is that the surgical system 10 isable to compensate for motion of objects during the surgical procedurein a dynamic manner that is transparent to the user. Specifically, thesurgical system 10 operates synchronously by continually monitoringmotion of the anatomy, the haptic device tracker 45, and the arm 33 andcontinually updating the transformations T₂, T₄, and T₅ withoutinterrupting operation of the haptic device 30. In contrast,conventional surgical systems typically operate asynchronously, forexample, by requiring the user to stop and reset the system orreregister tracked objects when movement of a tracked object isdetected. As a result, with conventional systems, the operation of thesystem may be interrupted or impeded when motion of a tracked object isdetected. Although the present invention can operate synchronouslywithout interrupting the operation of the haptic device 30, it isadvantageous to occasionally restrict operation of the haptic device 30,for example, when the surgical system 10 detects abnormal motion, suchas when a tracked object moves too fast and/or too far.

In one embodiment, a method of compensating for motion of objects duringa surgical procedure includes (a) determining a pose of the anatomy; (b)determining a pose of the tool 50; (c) determining at least one of aposition, an orientation, a velocity, and an acceleration of the tool50; (d) associating the pose of the anatomy, the pose of the tool 50,and a relationship between the pose of the anatomy and the at least oneof the position, the orientation, the velocity, and the acceleration ofthe tool 50; and (e) updating the association in response to motion ofthe anatomy and/or motion of the tool 50 without interrupting operationof the surgical device during the surgical procedure. The method mayalso include the step of providing haptic guidance, based on therelationship, to the user to constrain the user's manipulation of thesurgical tool. The relationship may be based, for example, on a desiredinteraction between the anatomy and a position, an orientation, avelocity, and/or an acceleration of the tool 50. In one embodiment, therelationship is defined by a virtual object or parameter positionedrelative to the anatomy and representing a desired location of animplant and/or cut surfaces for installing the implant. The step ofassociating the pose of the anatomy, the pose of the tool 50, and therelationship may be accomplished, for example, using registrationprocesses, coordinate transformation processes (e.g., block 2506 of FIG.10), and implant planning processes (e.g., as described in theabove-reference Pub. No. US 2006/0142657). In one embodiment, the stepof associating includes (a) defining a first transformation fortransforming a coordinate system of the anatomy to a coordinate systemof a representation of an anatomy; (b) defining a second transformationfor transforming a coordinate system of the tool 50 to a coordinatesystem of the representation of the anatomy; and (c) associating therelationship with the coordinate system of the representation of theanatomy. To associate the relationship with the coordinate system of therepresentation of the anatomy, the user may, for example, position avirtual object relative to an image of the anatomy (e.g., as describedin the above-reference Pub. No. US 2006/0142657). To enable the surgicalsystem 10 to compensate for motion of objects during the surgicalprocedure, the step of updating the association may include updating thefirst transformation and/or the second transformation in response tomotion of the anatomy and/or motion of the tool 50.

In this embodiment, the pose of the tool 50 is determined by determininga pose of a first portion of the haptic device 30 to which the tool 50is coupled, determining a pose of a second portion of the haptic device30, and calculating the pose of the tool 50 based at least in part onthe poses of the first and second portions of the haptic device 30 and aknown geometric relationship between the tool 50 and the first portionof the haptic device 30. In one embodiment, the first portion of thehaptic device 30 comprises the distal end of the arm 33, and the secondportion of the haptic device 30 comprises the base 32 of the hapticdevice 30. In another embodiment, the second portion of the hapticdevice 30 comprises an intermediate portion of the arm 33 (e.g., thesegments 33 a, 33 b, or 33 c). In one embodiment, rather than mountingthe end effector tracker 35 to a distal end of the arm, the end effectortracker 35 could be mounted to an intermediate portion of the arm, suchas the elbow. The step of determining the pose of the second portion ofthe haptic device 30 includes determining a pose of the haptic devicetracker 45 (which is mounted on the second portion of the haptic device30, e.g., to the base 32 or an intermediate portion of the arm 33).Because the pose of the tool 50 is determined based on the poses of thefirst and second portions of the haptic device 30 and because thesurgical system 10 continually updates the poses of the first and secondportions (e.g., based on joint encoder data and a position of the hapticdevice tracker 45), the pose of the tool 50 is updated to account formotion of the first and second portions. As a result, motion to the tool50 is determined based on motion of the first and second portions. Inthis manner, the surgical system 10 is able to compensate for motion ofobjects during a surgical procedure.

In one embodiment, the tracking system 40 is a non-mechanical trackingsystem (e.g., as described above in connection with the tracking system40) that operates at a different update rate than the haptic device 30.For example, the haptic device 30 may update at 2000 Hz while thetracking system 40 updates at 15-30 Hz. The lower update rate of thetracking system 40 limits the dynamic performance of the motioncompensation because the 15-30 Hz updates are separated by 1/15 to 1/30seconds during which time no tracking information is available.Additionally, higher frequency motions of a tracked object will not bepresent in the output data of the tracking system 40. One disadvantageof poor dynamic performance is that the surgical system 10 may not havesufficient data to move the haptic object precisely in sync with thephysical anatomy. As a result, any cuts the surgeon makes may havereduced accuracy. For example, when the surgical system 10 is providinghaptic guidance to guide the surgeon in cutting a planar bone surfacewith a spherical burr, momentary motion of one of the tracked objectscombined with poor dynamic performance may result in divots or peaks inthe final cut surface. The worse the dynamic performance, the larger thedivots and peaks will be. If the bone cuts are for a cemented implants,small divots are acceptable because cement will simply fill the divots.For press fit implants, however, divots cause gaps between the implantand the bone that may potentially inhibit full in-growth of the boneinto the implant. Peaks are less critical than divots because they canbe easily removed with the burr but will increase the amount of timerequired to complete bone preparation.

For motion compensation applications, several techniques are beneficialin maximizing performance from tracking systems with dynamic performanceissues. First, because of the different update rates, if the coordinatetransformation process 2506 uses data directly from the tracking system40, the desired cut surfaces defined by the virtual object move inabrupt steps in response to detected motion of the anatomy. As a result,a user manipulating the haptic device 30 may experience a rough or“jumpy” feeling when interacting with a haptic object. To address thisproblem, the surgical system 10 may include an interpolation or otherappropriate filter (represented by the blocks 4512 in FIG. 12). Thefilter also acts to reduce the output noise of the tracking system,which would otherwise result in the user feeling a vibration wheninteracting with a haptic object, or result in the cut having a roughsurface. In a preferred embodiment, the filter is a 3rd orderButterworth filter with a cutoff frequency in a range of 5-10 Hz thatsamples data from the tracking system 40 at 2000 Hz and produces afiltered output. The filtered output reduces “jumpiness” of the cutsurfaces relative to the anatomy from both the “stairstep” output fromthe tracking system and the noise inherent in the tracking system outputupdates. The Butterworth filter is characterized by a flat frequency inthe passband and is easily designed using commonly available filterdesign software, such as Mathwork's Matlab Signal Processing Toolbox“butter” function, which outputs digital or analog filter coefficientsbased on the desired order and cutoff frequency. Using a higher orderwill result in sharper rolloff characteristics but require additionalcomputation. A lower cutoff frequency will improve the filtering of thediscrete tracking system updates and the tracking system noise butdegrade the dynamic performance of the tracking. Alternatively, aChebychev, Inverse Chebychev, Elliptic, Bessel (Thomson), or otherfilter can be used instead of a Butterworth filter. In anotherembodiment, a finite impulse response (FIR) filter can be used. An FIRfilter can be designed to be “linear phase” so that all frequencies aredelayed by the same amount, which makes compensation for filter delayeasier. FIR filters are also well suited to “multi-rate” applications.For the tracking application of the present invention, interpolationwould be used to convert the low frequency tracking signal to the highfrequency rate of the haptic device 30. FIR filters are better thaninfinite impulse response (IIR) filters for multi-rate applicationsbecause FIR filters do not have feedback, i.e., their outputs are only afunction of the input signal, not the output of the filter. Also,computation is only required for the low frequency signal samples, notfor every high frequency sample.

In their traditional implementation, all of the above filters aredesigned for scalar input signals. However, the tracking system 40 willgenerally output multiple position and orientation signals. In apreferred embodiment, the filter 4512 receives the tracking systemoutput, expressed as a homogenous transformation four by four sizematrix that contains the position and orientation information. It is notdesirable to filter the elements of this matrix directly because theresult will not be a valid homogenous matrix and the orientation willnot be filtered properly. Instead, the homogenous transformation isfirst converted to a three element position vector and a quaternion,which is a four element vector that represents the orientationinformation. For the small motions between samples, these seven valuescan then be independently filtered. The quaternion may be normalizedbefore taking the filtered values and converting them back to ahomogenous transformation, which is then output from the filter 4512.

In most cases, the position output of the tracking system 40 representsthe position of the relevant tracked object at some point in the past.The latency is the time interval between the time when the trackingsystem 40 samples the tracked object's position and the time when thesurgical system 10 receives this position output. This time interval mayinclude processing time of the tracking system 40, communication delays,and a fraction or multiple of the sampling time of the tracking system40. The filter 4512 adds additional latency based on the phase delay ofthe particular filter selected. These latency sources all combine todegrade the dynamic tracking performance and cause the haptic surfacesto lag behind the motion of their associated tracked objects. However,these latency values are usually known or can be measured or estimatedfairly accurately. Thus, the latency effect can be partially compensatedfor. For example, if the combined latency of the tracking system 40 andthe filter 4512 is t₁, then the filtered position output p may becorrected by Δp=v t₁. The velocity value v can be computed by a(possibly filtered) difference of successive position values or with awashout filter, as described below. In another embodiment, as is wellknown to those skilled in the art of control theory, a state estimator,state observer, or Kalman filter, which include a simple simulated modelof the anatomy and/or the base 32 of the haptic device 30 and internallycompute both the position and velocity of the tracked object, could beused to eliminate the latency of the filter 4512. Alternatively, thefilter 4512 could be eliminated by utilizing a higher frequency trackingsystem, such as an encoder-based mechanical tracking system or highspeed optical tracking system.

Some tracking systems, notably optical tracking systems, may not produceaccurate outputs when tracked objects are moving relative to the camera(i.e., the detection device 41). Errors may result, for example, frommotion blur caused by the exposure time or scanning rate of the camera.If the velocity of the tracked object is computed using one of themethods described above and an error model of the tracking system as afunction of velocity and/or position is known or determined, theseerrors may be corrected by adding this error value to the filteredposition output.

Dynamic performance of the tracking system 40 is only relevant if thehaptic device 30 is capable of rendering a moving haptic objecteffectively. The haptic rendering capabilities of the haptic device 30are impacted by the type of haptic control scheme used. The hapticdevice 30 may utilize any suitable haptic control scheme, such as, forexample, admittance control, impedance control, or hybrid control. In anadmittance control mode, the haptic device 30 accepts force input andyields position (or motion) output. For example, the haptic device 30measures or senses a wrench at a particular location on the hapticdevice 30 (e.g., the user interface 37) and acts to modify a position ofthe haptic device 30. In an impedance control mode, the haptic device 30accepts position (or motion) input and yields wrench output. Forexample, the haptic device 30 measures, senses, and/or calculates aposition (i.e., position, orientation, velocity, and/or acceleration) ofthe tool 50 and applies an appropriate corresponding wrench. In a hybridcontrol mode, the haptic device 30 utilizes both admittance andimpedance control. For example, a workspace of the haptic device 30 maybe divided into a first subspace in which admittance control is used anda second subspace in which impedance control is used and/or bothposition and force inputs may be used to compute a force or positionoutput. For example, in a substantially impedance controlled device,force inputs may be used to cancel out some of the natural friction ofthe system. In a preferred embodiment, the haptic device 30 is designedfor impedance control, where the haptic device 30 reads the positionand/or orientation of the user-manipulated surgical tool 50 and outputsan appropriate force and/or torque. Impedance control devices have theadvantage of simplicity (no force sensor is required), better stabilityproperties when the tool contacts physical objects (such as when cuttingbone), and better performance when moving in free space. Admittancecontrol devices, however, have an advantage in that they can renderhaptic objects with very stiff walls more easily than impedance controldevices. With regard to motion tracking, impedance control devices areadvantageous in that their performance is related to the open-loop forcebandwidth and physical system dynamics. In contrast, the performance ofan admittance control device depends on the closed-loop position controlperformance, which tends to be slower than the open-loop force andphysical system dynamics.

Returning to the haptic rendering algorithm of FIG. 10, the HIPlocation, x, determined by the coordinate transformation process 2506 isprovided as input to the haptic rendering algorithm 2508 as shown inFIG. 12. A collision detection/proxy location haptic rendering process(represented by block 2514 in FIG. 12) receives the HIP location, x, asinput and outputs a desired location, x_(d). The HIP location, x, issubtracted from the desired location, x_(d), and the result, Δx, ismultiplied by a haptic stiffness, K_(p), to determine aposition-dependent force command, F_(spring). A desired velocity is alsodetermined by taking the derivative, {dot over (x)}_(d), of the desiredlocation, x_(d). The desired velocity is used in the computation of adamping force, F_(damping).

As shown in FIG. 12, the damping force, F_(damping), is computed bysubtracting the desired velocity, {dot over (x)}_(d), from a Cartesianendpoint velocity, {dot over (x)}, of the haptic device 30 andmultiplying the result by a damping gain, K_(D). The Cartesian endpointvelocity, {dot over (x)}, is computed using data from position sensorsin motors of the arm 33. As discussed above in connection with thehaptic device 30, the arm 33 of the haptic device 30 preferably includesa cable transmission and position sensors in the motors and joints ofthe arm 33. In a preferred embodiment, joint encoders (represented byblock 4508 of FIG. 12) are used to obtain joint position measurements,and motor encoders (represented by block 4516 of FIG. 12) are used tocompute velocity measurements. The joint position measurements are usedin the forward kinematics process 2504 to determine the transformationT₅ and are also provided as input to a gravity compensation algorithm(represented by block 4518 in FIG. 12). The gravity compensationalgorithm computes gravity torques, τ_(grav) _(_) _(comp), required tocounteract gravity loads on the segments of the arm 33 as a function ofjoint angle. In contrast, the motor position measurements aredifferenced and filtered to compute a motor velocity measurement. Awashout filter (as represented by block 4520 in FIG. 12) combines thedifferentiating and smoothing into one filter. The washout filter may berepresented in the Laplace domain as:

${F_{WOF}(s)} = \frac{s}{\frac{s}{p} + 1}$where s is the Laplace transform variable, and where p determines thelocation of poles and in general should be located about two to threetimes faster than the fastest system pole. In one embodiment, the poleis placed at about 80 Hz. The filtered velocity is then multiplied by aJacobian matrix, J, to obtain the Cartesian endpoint velocity, {dot over(x)}, of the haptic device 30.

The washout filter limits the high-frequency gain thereby limiting theamplification of noise inherent in a derivative or differencingoperation and removing sampling-rate artifacts. The washout filter has asingle parameter, p, which simplifies design and tuning of the filter,compared with separate velocity differencing and smoothing operations.The Laplace domain representation given above can be transformed into adiscrete-time representation that is suitable for implementation on adigital computer using the well-known bilinear transform or z-transform.In an alternative embodiment to the washout filter, a simple differencedposition signal can be filtered with a Butterworth or other filterdescribed above to provide a velocity measure. Alternatively, a filteredposition signal can be differenced and possibly filtered again using anyof the filters described above.

As shown in FIG. 12, F_(damping) and F_(spring) are summed in the forcemapping process 2510 to obtain a desired haptic force, F_(haptic). Thedesired haptic force is multiplied by a transposed Jacobian matrix,J^(T), to computer motor torques, τ_(haptic), required to generate thedesired haptic force. The gravity torques, τ_(grav) _(_) _(comp), areadded to the motor torques, τ_(haptic), to obtain a total torque,τ_(total). The haptic device 30 is commanded to apply the total torque,τ_(total), to the motors of the arm 33. In this manner the hapticrendering process enables the surgical system 10 to control the hapticdevice 30, which then responds to the commanded torques, userinteraction, and interaction with the anatomy.

The haptic device 30 is preferably configured to operate in variousoperating modes. For example, the haptic device 30 may be programmed tooperate in an input mode, a hold mode, a safety mode, a free mode, anapproach mode, a haptic (or burring) mode, and/or any other suitablemode. The operating mode may be selected manually by the user (e.g.,using a selection button represented graphically on the display device23 or a mode switch located on the haptic device 30 and/or the computingsystem 20) and/or automatically by a controller or software process. Inthe input mode, the haptic device 30 is enabled for use as an inputdevice to input information to the surgical system 10. When the hapticdevice 30 is in the input mode, the user may operate the haptic device30 as a joystick or other input device, for example, as described abovein connection with the end effector 35 and/or in U.S. patent applicationSer. No. 10/384,078 (Pub. No. US 2004/0034282), which is herebyincorporated by reference herein in its entirety.

In the hold mode, the arm 33 of the haptic device 30 may be locked in aparticular pose. For example, the arm 33 may be locked using brakes,control servoing techniques, and/or any other appropriate hardwareand/or software for stabilizing the arm 33. The user may desire to placethe haptic device 30 in the hold mode, for example, during an activitysuch as bone cutting to rest, confer with a colleague, allow cleaningand irrigation of the surgical site, and the like. In the safety mode,the tool 50 coupled to the haptic device 30 may be disabled, forexample, by shutting off power to the tool 50. In one embodiment, thesafety mode and the hold mode may be executed simultaneously so that thetool 50 is disabled when the arm 33 of the haptic device 30 is locked inposition.

In the free mode, the end effector 35 of the haptic device 30 is freelymoveable within the workspace of the haptic device 30. Power to the tool50 is preferably deactivated, and the haptic device 30 may be adapted tofeel weightless to the user. A weightless feeling may be achieved, forexample, by computing gravitational loads acting on the segments 33 a,33 b, and 33 c of the arm 33 and controlling motors of the haptic device30 to counteract the gravitational loads (e.g., as described below inconnection with block 4518 of FIG. 12). As a result, the user does nothave to support the weight of the arm. The haptic device 30 may be inthe free mode, for example, until the user is ready to direct the tool50 to a surgical site on the patient's anatomy.

In the approach mode, the haptic device 30 is configured to guide thetool 50 to a target object, such as, for example, a surgical site,feature of interest on the patient's anatomy, and/or haptic objectregistered to the patient, while avoiding critical structures andanatomy. For example, in one embodiment, the approach mode enablesinteractive haptic positioning of the tool 50 as described in U.S.patent application Ser. No. 10/384,194 (Pub. No. US 2004/0034283), whichis hereby incorporated by reference herein in its entirety. In anotherembodiment, the haptic rendering application may include a haptic objectdefining an approach volume (or boundary) that constrains the tool 50 tomove toward the target object while avoiding sensitive features such asblood vessels, tendons, nerves, soft tissues, bone, existing implants,and the like. For example, as shown in FIG. 1, the approach volume mayinclude the haptic object 300, which is substantially cone-shaped,funneling from a large diameter to a small diameter in a directiontoward the target object (e.g., a proximal end of the tibia T or adistal end of the femur F). In operation, the user may freely move thetool 50 within the boundaries of the approach volume. As the user movesthe tool 50 through the approach volume, however, the tapering funnelshape constrains tool movement so that the tool 50 does not penetratethe boundaries of the approach volume. In this manner, the tool 50 isguided directly to the surgical site.

Another embodiment of the approach mode is shown in FIG. 8, whichillustrates a haptic object 208 corresponding to a femoral component ofa knee prosthesis and a haptic object 208 corresponding to a tibialcomponent of the knee prosthesis. In this embodiment, the hapticrendering application creates a virtual object that represents a pathwayfrom a first position to a second position. For example, the virtualobject may include a haptic object 310, which is a virtual guide wire(e.g., a line) defining a pathway from a first position (e.g., aposition of the tool 50 in physical space) to a second position thatincludes a target (e.g., a target object such as the haptic object 206or 208). In the approach mode, the haptic object 310 is activated sothat movement of the tool 50 is constrained along the pathway defined bythe haptic object 310. The surgical system 10 deactivates the hapticobject 310 when the tool 50 reaches the second position and activatesthe target object (e.g., the haptic object 206 or 208). The tool 50 maybe automatically placed in the haptic (or burring) mode when the hapticobject 206 or 208 is activated. In a preferred embodiment, the hapticobject 310 may be deactivated to enable the tool 50 to deviate from thepathway. Thus, the user can override the haptic guidance associated withthe haptic object 310 to deviate from the guide wire path and maneuverthe tool 50 around untracked objects (e.g., retractors, lamps, etc.) thecannot be accounted for when the virtual guide wire is generated. Thus,the approach mode enables the user to quickly deliver the tool 50 to atarget object while avoiding critical structures and anatomy. In theapproach mode, power to the tool 50 is preferably deactivated so thatthe tool is not accidentally energized, for example, when the user isinserting the tool through an incision or navigating soft tissue in ajoint. The approach mode generally precedes the haptic mode.

In the haptic (or burring) mode, the haptic device 30 is configured toprovide haptic guidance to the user during a surgical activity such asbone preparation. In one embodiment, as shown in FIG. 8, the hapticrendering application may include the haptic object 206 defining acutting volume on the tibia T. The haptic object 206 may have a shapethat substantially corresponds to a shape of a surface of a tibialcomponent. The haptic device 30 may enter the haptic mode automatically,for example, when the tip of the tool 50 approaches a predefined pointrelated to a feature of interest. In the haptic mode, the haptic object206 may also be dynamically modified (e.g., by enabling and disablingportions of a haptic surface) to improve performance of the hapticdevice 30 when sculpting complex shapes or shapes with high curvature asdescribed, for example, in U.S. patent application Ser. No. 10/384,194(Pub. No. US 2004/0034283), which is hereby incorporated by referenceherein in its entirety. In the haptic mode, power to the tool 50 isactivated, and the tip of the tool 50 is constrained to stay within thecutting volume to enable a precise bone resection. In anotherembodiment, an orientation constraint may be implemented, for example,by generating a slowly increasing force to draw the user inside thehaptic volume if the user is in proximity to the haptic volume.Additionally, in this embodiment, the tool 50 can be disabled wheneverthe tool 50 is outside the haptic volume. In another embodiment, thetool 50 can be disabled unless the haptic device 30 is generating hapticfeedback forces.

In operation, the surgical system 10 may be used for surgical planningand navigation as disclosed in the above-referenced Pub. No. US2006/0142657. The surgical system 10 may be used, for example, toperform a knee replacement procedure or other joint replacementprocedure involving installation of an implant. The implant may includeany implant or prosthetic device, such as, for example, a total kneeimplant; a unicondylar knee implant; a modular knee implant; implantsfor other joints including hip, shoulder, elbow, wrist, ankle, andspine; and/or any other orthopedic and/or musculoskeletal implant,including implants of conventional materials and more exotic implants,such as orthobiologics, drug delivery implants, and cell deliveryimplants. Prior to performance of the procedure, the haptic device 30 isinitialized, which includes a homing process, a kinematic calibration,and a haptic device registration calibration.

The homing process initializes the position sensors (e.g., encoders) inthe arm 33 of the haptic device 30 to determine an initial pose of thearm 33. Homing may be accomplished in any known manner such as bymanipulating the arm 33 so that each joint encoder is rotated until anindex marker on the encoder is read. The index marker is an absolutereference on the encoder that correlates to a known absolute position ofthe joint. Thus, once the index marker is read, the control system ofthe haptic device 30 knows that the joint is in an absolute position. Asthe arm 33 continues to move, subsequent positions of the joint arecalculated based on the absolute position and subsequent displacement ofthe encoder.

The kinematic calibration identifies errors in the kinematic parametersof the forward kinematics process 2504 (shown in FIG. 10). The forwardkinematics process 2504 calculates a Cartesian position and orientationof the end effector 35 based on the measured joint angles of the arm 33and the as-designed geometric properties of the haptic device 30 (e.g.,length and offset of the segments 33 a, 33 b, and 33 c of the arm 33).Due to manufacturing inaccuracies, however, the actual geometricproperties of the haptic device 30 may deviate from the as-designedgeometric properties, which results in error in the output of theforward kinematics process 2504. To determine the error, a kinematiccalibration fixture is attached to the haptic device 30. In oneembodiment, the fixture is a calibration bar having a fixed, knownlength. To perform the kinematic calibration, the end effector 35 isreplaced with a calibration end effector having one or more ball joints(e.g., four ball joints arranged to form a cross, where a ball joint islocated on each endpoint of the cross), and the arm 34 (on which thehaptic device tracker 45 mounts) is removed and remounted in ahorizontal configuration. A first end of the calibration bar ismagnetically engaged with a ball joint on the arm 34, and a second endof the calibration bar is magnetically engaged with one of the balljoints on the calibration end effector. The calibration end effector isthen moved to a plurality of positions (manually or automatically) asdata is captured by the surgical system 10. After sufficient data hasbeen collected (e.g., 100 data points), the second end of thecalibration bar is magnetically engaged with a different ball joint onthe calibration end effector. The process is repeated until data iscaptured for each ball joint on the calibration end effector. Using theexisting kinematic parameters and measured joint angles, the data isused to calculate the length of the calibration bar. The computed lengthof the calibration bar is compared with the known actual length. Thedifference between the computed length and the known length is theerror. Once the error is determined, the kinematic parameters can beadjusted to minimize aggregate error in the forward kinematics process2504 using, for example, a numerical nonlinear minimization algorithmsuch as Levenberg-Marquardt.

The haptic device registration calibration establishes a geometricrelationship or transformation between a coordinate system of the hapticdevice tracker 45 (e.g., the coordinate system X₃ shown in FIG. 13) andthe coordinate system of the haptic device 30 (e.g., the coordinatesystem X₄ shown in FIG. 13). If the haptic device tracker 45 is fixed ina permanent position on the haptic device 30, the registrationcalibration is unnecessary because the geometric relationship betweenthe tracker 45 and the haptic device 30 is fixed and known (e.g., froman initial calibration performed during manufacture or setup). Incontrast, if the tracker 45 can move relative to the haptic device 30(e.g., if the arm 34 on which the tracker 45 is mounted is adjustable),the registration calibration must be performed to determine thegeometric relationship between the tracker 45 and the haptic device 30.

The registration calibration involves securing the haptic device tracker45 in a fixed position on the haptic device 30 and temporarily affixingthe end effector tracker 47 to the end effector 35, for example, withthe clamp 1500 shown in FIG. 6A. To register the haptic device tracker45 to the haptic device 30, the end effector 35 (and thus the endeffector tracker 47) is moved to various positions in a vicinity of theanatomy (e.g., positions above and below the knee joint, positionsmedial and lateral to the knee joint) while the tracking system 40acquires pose data for the trackers 45 and 47 relative to the trackingsystem 40 in each of the positions. Multiple data points are collectedand averaged to minimize the effects of sensor noise and othermeasurement errors. Acquisition of the pose data during the registrationcalibration may be automatic. Alternatively, the user can initiate thecollection of data using an input device such as a foot pedal.

In one embodiment, the user manually moves the end effector 35 to thevarious positions while the end effector 35 in the free mode. In anotherembodiment, the surgical system 10 controls the haptic device 30 toautomatically move the end effector 35 to the various positions. In yetanother embodiment, the haptic device 30 provides haptic guidance toguide the user in moving the end effector 35 to predefined points in theworkspace of the haptic device 30. To improve the accuracy of theregistration calibration, the predefined points are preferably locatedin a vicinity of the surgical site (e.g., close to the actual bonepreparation site). The predefined points may include, for example,vertices of a shape, such as a two or three dimensional polytope (e.g.,a polygon or polyhedron). In one embodiment, the shape is a cubecentered at the relevant anatomy, such as the knee joint. The verticesare preferably displayed on the display device 23 along with an arrowindicating an allowable direction of motion for the end effector 35. Oneadvantage of utilizing haptic guidance to guide the user in moving theend effector 35 to predefined points is that the user is able to movethe end effector 35 to a plurality of positions in a repeatable fashion,which improves the accuracy of the registration calibration.

In addition to capturing data relating the pose of the trackers 45 and47 to the tracking system 40, the surgical system 10 determines a poseof the end effector 35 relative to the haptic device 30 based on datafrom the position sensors (e.g., joint encoders) in the arm 33. Thesurgical system 10 uses the data obtained during the registrationcalibration to calculate the geometric relationship between the hapticdevice tracker 45 and the coordinate frame of reference of the hapticdevice 30 (e.g., the coordinate system X₄ shown in FIG. 54).

In one embodiment, a transformation, T_(R) ^(B), of the haptic devicetracker 45 relative to the base 32 of the haptic device 30 is calculatedas follows. As the end effector 35 is moved to the various positions,the surgical system 10 records (a) a position of the end effectortracker 47 (e.g., a known position on the end effector 35) relative tothe tracking system 40, P_(C) ^(E), which is obtained from the trackingsystem 40; (b) a position and an orientation of the haptic devicetracker 45 relative to the tracking system 40, T_(C) ^(B), which isobtained from the tracking system 40; and (c) a position of the endeffector tracker 47 relative to the base of the haptic device 30, r,which is obtained from the joint encoders of the haptic device 30. Ifnoise is present in the tracking system output, multiple samples can betaken for each end effector position. In the event the haptic device 30moves during data sampling, the surgical system 10 can alert the user.Additionally, any affected data points should be thrown out becausethere will be latency between the data from the tracking system 40 andthe data from the joint encoders of the haptic device 30. A position ofthe end effector tracker 47 relative to the haptic device tracker 45 iscomputed as b_(i)=T_(B,i) ^(C)P_(C,i) ^(E) for each test location, i. Aposition of the end effector tracker 47 relative to the base 32 of thehaptic device 30 at each test location, i, is denoted by r_(i).

After data collection is complete, the transformation of the hapticdevice tracker 45 relative to the base 32 of the haptic device 30, T_(R)^(B), is separated into orientation and position terms,

$T_{R}^{B} = {\begin{bmatrix}R_{R}^{B} & P_{R}^{B} \\0 & 1\end{bmatrix}.}$The orientation component R_(R) ^(B) is found by solving the equationR_(R) ^(B) b _(i)=r _(i). For this equation, the position error vectorsb _(i) and r _(i) are computed according to

${{\overset{\_}{b}}_{i} = {{b_{i} - {b_{m}\mspace{14mu}{and}\mspace{14mu}{\overset{\_}{r}}_{i}}} = {r_{i} - r_{m}}}},{where}$$b_{m} = {{\frac{\sum\limits_{k = 1}^{n}\; b_{k}}{n}\mspace{14mu}{and}\mspace{14mu} r_{m}} = \mspace{14mu}{\frac{\sum\limits_{k = 1}^{n}\; r_{k}}{n}.}}$A least-squares estimator using singular value decomposition is used tosolve for R_(R) ^(B). The position vector P_(R) ^(B) can then be foundfrom the equation P_(R) ^(B)=r_(m)−R_(R) ^(B)b_(m). The transformationof the haptic device tracker 45 relative to the base 32 of the hapticdevice 30, T_(R) ^(B), can then be reconstructed according to

$T_{R}^{B} = {\begin{bmatrix}R_{R}^{B} & P_{R}^{B} \\0 & 1\end{bmatrix}.}$

After the registration calibration is complete, the end effector tracker47 is removed from the haptic device 30. During surgery, the surgicalsystem 10 can determine a pose of the tool 50 based on (a) a knowngeometric relationship between the tool 50 and the end effector 35, (b)a pose of the end effector 35 relative to the haptic device 30 (e.g.,from the position sensors in the arm 33), (c) the geometric relationshipbetween the haptic device 30 and the haptic device tracker 45 determinedduring the registration calibration, and (d) the global or grossposition of the haptic device 30 (e.g., from the pose of the hapticdevice tracker 45 relative to the tracking system 40). The registrationcalibration need not be performed if the haptic device tracker 45 hasnot moved with respect to the haptic device 30 since the previousregistration calibration and the previously acquired registrationcalibration data is still reliable.

In one embodiment, a method for performing the registration calibrationincludes (a) acquiring first data including at least one of a positionand an orientation of a first object disposed on the haptic device 30 ata first location; (b) acquiring second data including at least one of aposition and an orientation of a second object disposed on the hapticdevice 30 at a second location; (c) determining third data including atleast one of a position and an orientation of the first object relativeto the second location; and (d) determining at least one of a positionand an orientation of the second object relative to the second locationbased at least in part on the first data, the second data, and the thirddata. The method may also include (e) moving the first object (e.g., theend effector tracker 47 disposed on the arm 33 of the haptic device 30)to a plurality of positions; (f) providing haptic guidance (e.g., forcefeedback) to guide the user in moving the first object to at least oneof the plurality of positions; (g) acquiring the first data or thesecond data when the first object is in each of the plurality ofpositions; and (h) alerting the user if the first object, the secondobject, the first location, and/or the second location moves duringacquisition of the first data, the second data, and/or the third data.

In one embodiment, the first object is the end effector tracker 47, andthe second object is the haptic device tracker 45. In this embodiment,the steps of acquiring the first data and the second data includedetecting the trackers 45 and 47 with the detection device 41.Alternatively, the second object may comprise one or more components ofthe tracking system 40, such as the detection device 41. As describedabove in connection with the end effector tracker 47, the end effectortracker 47 may be disposed at a location (e.g., the first location) onthe haptic device 30 that includes a locating feature, such as acylindrical feature of the tool 50 or the tool holder 51. In this case,the step of acquiring the first data may include determining a positionand/or an orientation of a point and/or an axis of the cylindricalfeature (e.g., the axis H-H shown in FIG. 3B or any point thereon). Asdescribed above in connection with the haptic device tracker 45, thehaptic device tracker 45 (or the detection device 41) may be disposed ata location (e.g., the second location) on the haptic device 30, such asthe base 32 (e.g., via the arm 34) on which the proximal end of the arm33 is disposed. Alternatively, the haptic device tracker 45 (or the endeffector tracker 47) may be located on an intermediate portion of thearm 33. During the haptic device registration calibration, the positionand/or the orientation of the first object and the second object arefixed relative to the first and second locations, respectively. Fixationmay be accomplished, for example, by clamping the end effector tracker47 to the end effector 35 with the clamp 1500 and by fixing the positionof the arm 34 on which the haptic device tracker 47 (or the detectiondevice 41) is mounted. To determine the position and orientation of thefirst object relative to the second location (i.e., the third data), thesurgical system 10 determines a configuration of the arm 33, forexample, based on data from the joint encoders.

After the haptic device 30 is initialized, the surgeon can register thepatient and the surgical tool 50 to a representation of the anatomy(such as a CT image) and perform a surgical procedure, such as preparinga bone to receive an implant based on a surgical plan. Registration,implant planning, and surgical navigation may be accomplished, forexample, as described in the above-referenced Pub. No. US 2006/0142657.Throughout the surgical procedure, the surgical system 10 monitors aposition of the bone to detect movement of the bone and makescorresponding adjustments to programs running on the computer 21 and/orthe computer 31. For example, the surgical system 10 can adjust arepresentation (or image) of the bone in response to detected movementof the bone. Similarly, the surgical system 10 can adjust arepresentation (or image) of the surgical tool 50 in response todetected movement of the surgical tool 50. Thus, images of the bone andthe surgical tool on the display device 23 move dynamically in real-timeas the bone and the surgical tool 50 move in physical space. Thesurgical system 10 can also adjust a virtual object associated with thebone in response to detected movement of the bone. For example, thevirtual object may define a virtual cutting boundary corresponding to ashape of a surface of the implant. As the bone moves, the surgicalsystem 10 adjusts the virtual object so that the virtual cuttingboundary moves in correspondence with the physical bone. In this manner,the surgeon can make accurate bone cuts even when the bone is moving.Additionally, adjustment of the images and the haptic object aretransparent to the surgeon so that the surgeon's operation of the hapticdevice 30 is not interrupted during the surgical procedure.

To improve the safety of the surgical system 10, the surgical system 10may include a safety feature adapted to constrain the user's operationof the tool 50 when an unsafe condition exists. For example, if anunsafe condition is detected, the surgical system 10 may issue a faultsignal. A fault condition may exist if there is a system problem (e.g.,a problem with the hardware or software), if an occlusion detectionalgorithm (e.g., as described below) detects an occluded condition, if atracked object is moving too fast for the tracking system to process(e.g., when the patient's leg or the haptic device tracker 45 suddenlydrops), when the tracking data is questionable, when the user is pushingtoo hard on the interface 37, and/or if the tool 50 is in an undesirablelocation. In one embodiment, the surgical system 10 is programmed toissue a fault if a relationship between the anatomy and a position, anorientation, a velocity, and/or an acceleration of the tool 50 does notcorrespond to a desired relationship and/or if the detection device 41is unable to detect the position of the anatomy or the position of thesurgical tool 51. In response to the fault signal, the surgical system10 may impose a constraint on the haptic device 30. The constraint mayinclude, for example, providing haptic guidance to the user (e.g., toprevent the user from moving the tool 50 in an unsafe manner) orchanging the mode of the haptic device 30 (e.g., from a haptic mode to afree mode). In the preferred embodiment, the constraint is applied tothe interface 37, which is both manipulated by the user and is proximalto the surgical site. For a teleoperated haptic device, which includes a“master” device that is operated by the surgeon and is typically remotefrom the surgical site and a “slave” device that holds the surgical toolproximal to the surgical site and is controlled by the master device,the constraint may be applied to the master device, the slave device, orboth.

In one embodiment, a fault signal may be issued if the haptic renderingalgorithm determines that a penetration depth of the tool 50 into ahaptic boundary exceeds a predetermined threshold. The predeterminedthreshold may be, for example, a penetration depth in a range of about 1mm to about 1.25 mm. In one embodiment, the haptic rendering algorithmdetermines whether the predetermined threshold is exceeded based on thehaptic wrench (i.e., force and/or torque) being applied by the hapticdevice 30 to the user. For example, the haptic rendering algorithm mayinclude a linear force versus position curve where the haptic force isset to about 20,000 N/m (or 20 N/mm). Thus, if the user moves the tip ofthe tool 50 to a penetration depth of 1 mm, the haptic device 30 outputsa haptic force of about 20 N. Similarly, if the user moves the tip ofthe tool 50 to a penetration depth of 1.25 mm, the haptic device 30outputs a haptic force of about 25 N. In this embodiment, the faultsignal is triggered when the haptic force reaches about 22.5 N, whichcorresponds to a penetration depth of about 1.125 mm. Additionally, athreshold haptic force value can be used to protect against the hapticdevice 30 generating excessively high forces. For example, hapticobjects can be designed as independent primitives (e.g., simplegeometric shapes) and combined during haptic rendering. If thecumulative effect of the primitives is undesirable (e.g., the totalhaptic force is too high), a fault signal can be issued.

In another embodiment, a fault signal may issue if rapid motion of theanatomy is detected as indicated, for example, by a velocity of theanatomy trackers 43 a and 43 b. Rapid motion may be caused, for example,when the anatomy shifts or a tracking element or the detection device 41is bumped. In one embodiment, the fault signal issues if a velocity ofthe anatomy tracker 43 a is greater than about 40 mm/s or a velocity ofthe anatomy tracker 43 b is greater than about 26 mm/s. The indicationof rapid motion may also be based on position (as opposed to velocity)such as when a position of the anatomy tracker 43 a or 43 b abruptlychanges significantly. An abrupt change may be indicated, for example,if a change from the last known good position reported by the trackingsystem 40 to the current position reported by the tracking system 40 isgreater than a predetermined threshold. In addition to rapid motion ofthe anatomy, the fault signal may issue if rapid motion of the hapticdevice tracker 45 is detected, such as when the haptic device tracker 45has a high velocity or an abrupt change in position, which may indicatethat the tracker 45 has been bumped or is not securely secured to thearm 34.

The surgical system 10 may have different levels or stages of faults.For example, in one embodiment, there are three stages of faults. Thefirst fault stage applies when the tip of the tool 50 penetrates toodeeply into or beyond a haptic boundary. The second fault stage applieswhen rapid motion of the anatomy is detected. The third fault stageapplies when a system fault is present. The surgical system 10 respondsto the fault stages by imposing a constraint on the haptic device 30.For example, the surgical system 10 may respond to the first fault stageby disabling the tool 50. The surgical system 10 may respond to thesecond fault stage by disabling both the tool 50 and the hapticguidance. Disabling the haptic guidance when rapid motion of the anatomyis detected (e.g., when the patient's leg slips off the operating table)advantageously prevents the virtual haptic surfaces that define thehaptic cutting volume from moving with the falling bone and dragging thetool 50 along. In contrast, if the haptic surfaces are not disabled whenthe bone moves rapidly, the haptic surfaces will follow the bone and thehaptic device 30 will exert a large force on the arm 33 to maintain thetool 50 within the falling haptic volume. As a result, the arm 33 willbe dragged downward as the bone falls. Disabling the haptic guidanceavoids this dangerous situation. The surgical system 10 may respond tothe third fault stage by disabling the tool 50, shutting off power tothe arm 33, and locking the brakes of the arm 33. In one embodiment, thesurgical system 10 responds to a fault signal by disabling the tool 50and placing the haptic device 30 in the free mode (rather than applyingthe brakes) so that the arm 33 does not pull or apply stress to theanatomy. In this manner, the surgical system 10 avoids damaging theanatomy by preventing the user from operating the tool 50 and/or the arm33 when an unsafe condition exists.

In one embodiment, a safety feature of the surgical system 10 includes atool disabling feature. For example, if the tool 50 is an electric tool,the surgical system 10 may include a relay disposed along an electricalconnection between the tool 50 and a user input device for controllingthe tool 50. For example, the relay may be located between a foot pedaland a tool control console (e.g., the ANSPACH® foot pedal and consoledescribed above in connection with the tool 50). Alternatively, therelay could be disposed along a control cable for a handheld instrument.In the case of a pneumatic tool, a pneumatic shutoff valve may bedisposed in an air connection between the user input device and the toolmotor. In lieu of a relay, the surgical system 10 could supply a digitalor analog signal to a “disable input” port on the tool control console.In one embodiment, the surgical system 10 includes a relay that isclosed under normal operating conditions so that the tool 50 isactivated when the user depresses the foot pedal. If a fault conditionis detected, the surgical system 10 issues a fault signal and commandsthe relay to open so that the tool 50 cannot be activated even when theuser depresses the foot pedal. In another embodiment, the relay is a“normally open” relay so that the tool 50 will be remain shut off ordisabled unless the tool 50 is specifically enabled by the surgicalsystem 10. One advantage of a “normally open” relay is that if thehaptic device 30 completely shuts down, the tool 50 will be disabled.Alternatively or in addition to disabling the tool 50 by commanding arelay or shut off valve, a fault condition may trigger the surgicalsystem 10 to disable the tool 50 by commanding a power shutoff to theconsole or to the power supplies or amplifiers that drive the tool 50.

In one embodiment, a method of controlling the haptic device 30 based onthe tool disabling features includes (a) enabling operation of thehaptic device 30; (b) manipulating the haptic device 30 to perform aprocedure on a patient; (c) determining whether a relationship betweenthe anatomy of the patient and a position, an orientation, a velocity,and/or an acceleration of the tool 50 of the haptic device 30corresponds to a desired relationship; and (d) issuing a fault signaland/or imposing a constraint on the haptic device 30 if the relationshipdoes not correspond to the desired relationship or if the detectiondevice 41 is unable to detect the anatomy or the tool 50. Therelationship may be based, for example, on a desired interaction betweenthe anatomy and the tool 50. In one embodiment, the relationship isdefined by a virtual object positioned relative to the anatomy andrepresenting a desired location of an implant and/or cut surfaces forinstalling the implant. The method may further include implementingcontrol parameters for controlling the haptic device 30 to provide atleast one of haptic guidance to the user and a limit on usermanipulation of the surgical device based on the relationship. In oneembodiment, in response to the fault signal, the surgical system 10disables operation of the haptic device 30, locks a portion of thehaptic device 30 in position, and/or places the haptic device 10 in asafety mode. In the safety mode, operation of and/or manipulation of thehaptic device 30 may be impeded or constrained. To determine whether therelationship corresponds to the desired relationship, the surgicalsystem 10 may, for example, determine whether a penetration depth of thetool 50 into a virtual boundary associated with the anatomy exceeds adesired penetration depth, determine whether the haptic device 30 hasviolated an operational constraint (e.g., a parameter generated by thehaptic rendering algorithm), and/or determine whether the detectiondevice 41 is able to detect a position of the anatomy and/or a positionof the tool 50.

In another embodiment, a safety feature of the surgical system 10includes an occlusion detection algorithm adapted to mitigate riskduring a cutting operation in the event tracking elements (e.g., thetrackers 43 a, 43 b, 45) associated with the haptic device 30 and/or theanatomy become occluded. An occluded state may exist, for example, whenthe detection device 41 is unable to detect a tracking element (e.g.,when a person or object is interposed between the tracking element andthe detection device 41), when a lens of the detection device 41 isoccluded (e.g., by dust), and/or when reflectivity of markers on atracking element is degraded (e.g., by blood, tissue, dust, bone debris,etc.). If an occluded state is detected, the occlusion detectionalgorithm alerts the user, for example, by causing a warning message tobe displayed on the display device 23, an audible alarm to sound, and/orthe generation of tactile feedback (e.g., vibration). The occlusiondetection algorithm may also issue a control signal, such as a commandto the surgical system 10 to shut off power to or otherwise disable thetool 50 or to impose a constraint on the haptic device 30 (e.g.,providing haptic guidance, changing a mode of the haptic device 30,etc.). In this manner, the occlusion detection algorithm prevents thetool 50 from damaging the anatomy when the tracking system 40 is notable to accurately determine relative positions of the tool 50 and theanatomy.

In one embodiment, the occlusion detection algorithm considers aposition of the tool 50 relative to a haptic boundary. In thisembodiment, if the occlusion detection algorithm detects an occludedstate, the surgical system 10 determines whether the tool 50 is touchinga haptic boundary of a haptic object. If the tool 50 is not in contactwith a haptic boundary at the time of an occlusion event, the occlusiondetection algorithm disables the tool 50 and places the haptic device 30in the free mode so that the tool 50 will move with the patient and, ifnecessary, can be withdrawn from the patient. When the occluded stateends (e.g., when all occluded trackers become visible), the surgicalsystem 10 places the haptic device 30 in the approach mode so that theuser may resume the procedure. In this manner, the occlusion detectionalgorithm permits the haptic boundary to be deactivated if the userisn't pushing against the haptic wall at the time of the occlusionevent. In contrast, if the surgical system 10 determines that the tool50 is touching the haptic boundary and/or exceeding the haptic boundaryat the time of the occlusion event, the occlusion detection algorithmwaits for a predetermined period of time (e.g., 1 second) to see if theoccluded tracker(s) become visible. During this time, the tool 50 isdisabled, and the user is alerted that the tracker(s) are occluded(e.g., via a visual, audible, or tactile signal). If the haptic devicetracker 45 and the anatomy trackers 43 a and 43 b all become visiblewithin the predetermined period of time, the haptic (or burring) mode isresumed. Otherwise, the haptic device 30 is placed in the free mode sothat the tool 50 will move with the patient and, if necessary, can bewithdrawn from the patient. As before, when the occluded state ends(e.g., when all occluded trackers again become visible), the surgicalsystem 10 places the haptic device 30 in the approach mode so that theuser may resume the procedure. One advantage of utilizing thepredetermined period of time (or time interval) is that the occlusiondetection algorithm allows the haptic wall to remain active duringmomentary occlusion events. Additionally, sudden removal of the hapticwalls, which might result in sudden motion from the surgeon duringcutting, is avoided. Additionally, if the occluded condition ceases toexist within the predetermined period of time, the low pass filterutilized for dynamic tracking (motion compensation) is reset to preventthe tracking system 40 from perceiving small motions as discontinuousmotion.

FIG. 14 shows a diagram of an embodiment of an occlusion detectionalgorithm. In step S3500, the haptic device 30 is in the haptic (orburring) mode. In step S3502, the algorithm determines whether thehaptic device tracker 45 and the relevant anatomy tracker are bothvisible (i.e., not occluded) to the detection device 41. The relevantanatomy tracker is the anatomy tracker associated with the bone ofinterest. Thus, for a knee replacement procedure, if the surgeon ispreparing the femur F, the relevant anatomy tracker is the anatomytracker 43 a. Similarly, if the surgeon is preparing the tibia T, therelevant anatomy tracker is the anatomy tracker 43 b. Althoughadditional anatomy trackers may also be monitored, the occlusiondetection algorithm preferably monitors only the relevant anatomytracker to avoid unnecessary false triggers (e.g., triggers based onocclusion of trackers associated with portions of the anatomy other thanthe bone of interest). If both the haptic device tracker 45 and therelevant anatomy tracker are visible, the algorithm proceeds to stepS3504 and enables the surgical tool 50. The surgical tool 50 may beenabled, for example, by providing power to the tool 50 so that the tool50 can be activated by the user, such as by depressing a foot pedal. Asshown in the loop of FIG. 14 (steps S3500, S3502, and S3504), as long asboth trackers are visible, the haptic device 30 continues in the hapticmode with the surgical tool 50 enabled.

In contrast, if the detection device 41 in step S3502 is unable todetect the haptic device tracker 45 and/or the relevant anatomy tracker,the algorithm concludes that at least one of the trackers is occludedand proceeds to step S3506. The surgical tool 50 may be disabled, forexample, by shutting off power to the tool 50 so that the tool 50 cannotbe activated by the user even if the user attempts to activate the tool50, such as by depressing a foot pedal. After the tool 50 is disabled,the algorithm the proceeds to step S3508 and provides an indication tothe user that an occluded state exists. The indication may be anysuitable signal, such as a visual signal on the display device 23, anaudible signal (e.g., a beep, alarm, or other warning sound), a tactilesignal (e.g., vibration), and/or a control signal (e.g., a controlsignal that commands the haptic device 30 to lock the arm 33 inposition). In step S3510, the algorithm determines whether a hapticforce is detected. A haptic force is detected, for example, when thehaptic device 30 is providing force feedback to the user (e.g., hapticguidance and/or a limit on user manipulation of the arm 33). If a hapticforce is not detected in step S3510, the algorithm proceeds to stepS3518, deactivates the haptic mode, and enables the free mode. When thehaptic device 30 is in the free mode, the tool 50 will move with thepatient and, if necessary, can be withdrawn from the patient. When theoccluded state ends, the surgical system 10 places the haptic device 30in the approach mode so that the surgeon may resume the procedure.

In contrast, if a haptic force is detected, the algorithm proceeds tostep S3512 and maintains the haptic device 30 in the haptic mode. Instep S3514, the algorithm determines whether the haptic device tracker45 and/or the relevant anatomy tracker is still occluded. If thetrackers are not occluded, the algorithm returns to step S3500 where thehaptic device 30 is maintained in the haptic mode 30 so that the surgeonmay continue the procedure. In contrast, if at least one of the trackersis still occluded, the algorithm proceeds to step S3516 and determineswhether a time t has elapsed since the occluded state was detected. Thetime t may be chosen based on the application. In one embodiment, thetime t is about 1 second. If the time t has not elapsed, the algorithmreturns to step S3514. If the time t has elapsed, the algorithm proceedsto step S3518, deactivates the haptic mode, and enables the free mode.When the haptic device 30 is in the free mode, the tool 50 will movewith the patient and, if necessary, can be withdrawn from the patient.When the occluded state ends, the surgical system 10 places the hapticdevice 30 in the approach mode so that the surgeon may resume theprocedure. In this manner, the occlusion detection algorithmadvantageously limits the user's ability to activate the tool 50 whenthe surgical system 10 is not able to determine the relative positionsof the haptic device 30 and the anatomy. As a result, the risk ofdamaging the anatomy is mitigated.

Another embodiment of the occlusion detection algorithm includes amethod for controlling the haptic device 30 comprising the followingsteps: (a) detecting with the detection device 41 a first objectcomprising at least one of the anatomy and a tracking element associatedwith the anatomy; (b) detecting with the detection device 41 a secondobject comprising at least one of the haptic device 30 and a trackingelement associated with the haptic device 30; and (c) providing anindication to the user if the detection device 41 is unable to detectthe first object and/or the second object. The indication may be, forexample, a signal, such as a visual, an audible, a tactile, and/or acontrol signal, or may be provided by disabling at least a portion ofthe haptic device 30, such as the tool 50. In one embodiment, the methodincludes imposing a constraint on the haptic device 30, such as limitingmovement of at least a portion of the haptic device 30 (e.g., the arm33, the tool 50) or limiting operation of the haptic device 30 (e.g.,shutting off power to or otherwise disabling the tool 50, changing amode of the haptic device, etc.). The constraint is preferably removedafter a predetermined time interval (e.g., 1 second as discussed abovein connection with step S3516 of FIG. 55). The method may also includeenabling the haptic device 30 only if the detection device 41 is able todetect both the first object and the second object.

In one embodiment, the occlusion detection algorithm determines whetherthe haptic device 30 is providing haptic guidance to the user and/or alimit on user manipulation of the haptic device 30. The haptic guidanceand/or the limit on user manipulation may be based, for example, on avirtual boundary associated with the anatomy. If haptic guidance and/ora limit on user manipulation is being provided, the haptic guidanceand/or the limit on user manipulation is preferably maintained to avoiddamage to the anatomy (e.g., damage caused by sudden removal of thevirtual boundary or haptic wall when the user is pushing against thevirtual boundary with the tool 50). Accordingly, the virtual boundary ispreferably maintained if a portion of the haptic device 30 (e.g., thetip of the tool 50) is proximate to, in contact with, or exceeding thevirtual boundary. The method may also include deactivating the virtualboundary if the portion of the haptic device 30 is not interacting withthe virtual boundary (e.g., if the tool 50 is not in contact with thevirtual boundary or haptic wall). In this situation, because the user isnot pushing against the virtual boundary with the tool 50, the tool 50is not likely to damage the anatomy if the virtual boundary is suddenlyremoved. As a result, the risk of damaging the anatomy is reduced.

Thus, embodiments of the present invention provide a surgical systemthat is able to cooperatively interact with a surgeon to enable thesurgeon to sculpt complex shapes in bone in a minimally invasive mannerand that has the ability to dynamically compensate for motion of objectsin the intraoperative environment in a manner that safeguards thepatient and is substantially transparent to the surgeon.

A system and method for verifying calibration of a surgical device isdisclosed in U.S. patent application Ser. No. 11/750,807, entitledSystem and Method for Verifying Calibration of a Surgical Device, byLouis Arata, Sherif Aly, Robert Van Vorhis, Sandi Glauser, TimothyBlackwell, Rony Abovitz, and Maurice R. Ferre, filed on May 18, 2007,the disclosure of which is hereby incorporated herein by reference inits entirety.

What is claimed is:
 1. A method of compensating for motion of objectsduring a surgical procedure, comprising the steps of: determining a poseof an anatomy of a patient; determining a pose of a surgical tool of asurgical device, wherein the surgical device comprises a haptic device;determining an applied wrench applied to the surgical device; defining arelationship between the pose of the anatomy and the surgical tool basedon a desired interaction between the anatomy and at least one of aposition, an orientation, a velocity, and an acceleration of thesurgical tool, wherein the relationship is defined based on a virtualobject; associating, with a coordinate system of a representation of theanatomy, the pose of the anatomy, the pose of the surgical tool, and therelationship; updating the association with the coordinate system of therepresentation of the anatomy in response to motion of the anatomywithout interrupting operation of the surgical device during thesurgical procedure; dividing a workspace of the surgical device into afirst subspace and a second subspace; and providing a hybrid controlscheme comprising providing admittance control when the surgical tool ispositioned in the first subspace and impedance control when the surgicaltool is positioned in the second subspace; wherein providing theadmittance control comprises modifying the position of the surgicaldevice based on the applied wrench; and wherein providing the impedancecontrol comprises providing haptic guidance by applying a second wrenchto the surgical device, based both on the relationship between the poseof the anatomy and the surgical tool and on the applied wrench, to auser to constrain the user's manipulation of the surgical tool.
 2. Themethod of claim 1, wherein the step of associating the relationship withthe coordinate system of the representation of the anatomy includes thestep of: positioning the virtual object relative to the representationof the anatomy.
 3. The method of claim 1, wherein the step ofassociating the pose of the anatomy, the pose of the surgical tool, andthe relationship includes the steps of: defining a first transformationfor transforming a coordinate system of the anatomy to the coordinatesystem of the representation of the anatomy; and defining a secondtransformation for transforming a coordinate system of the surgical toolto the coordinate system of the representation of the anatomy.
 4. Themethod of claim 3, further comprising the steps of: updating the firsttransformation in response to at least one of the motion of the anatomyand the motion of the surgical tool; and updating the secondtransformation in response to at least one of the motion of the anatomyand the motion of the surgical tool.
 5. The method of claim 1, furthercomprising the steps of: representing at least one of the anatomy, thesurgical tool, and the relationship; and updating the representation inresponse to at least one of the motion of the anatomy and the motion ofthe surgical tool.
 6. The method of claim 1, wherein the pose of thesurgical tool is determined based at least in part on a pose of a firstportion of the surgical device, a pose of a second portion of thesurgical device, and a known geometric relationship between the surgicaltool and the first portion of the surgical device.
 7. The method ofclaim 6, wherein the first portion of the surgical device is configuredto be moveable relative to the second portion of the surgical device andthe second portion of the surgical device is configured to be moveablerelative to the anatomy.
 8. The method of claim 6, wherein a detectiondevice is coupled to the surgical device.
 9. The method of claim 6,wherein the first portion of the surgical device includes at least aportion of a serial linkage, a parallel linkage, or a hybrid linkage.10. The method of claim 1, wherein the surgical device comprises ahaptic device.
 11. The method of claim 6, wherein the step ofdetermining the pose of the surgical tool includes the step of:determining a pose of a tracking element disposed on the second portionof the surgical device.
 12. The method of claim 11, wherein a positionof the tracking element is adjustable relative to the second portion ofthe surgical device.
 13. The method of claim 11, wherein a position ofthe tracking element is fixed relative to the second portion of thesurgical device.
 14. A surgical apparatus, comprising: a surgical devicecomprising a haptic device; a surgical tool coupled to the surgicaldevice; and a computing system programmed to: determine a pose of ananatomy of a patient; determine a pose of the surgical tool; determinean applied wrench applied to the surgical device; define a relationshipbetween the pose of the anatomy and the surgical tool based on a desiredinteraction between the anatomy and at least one of a position, anorientation, a velocity, and an acceleration of the surgical tool,wherein the relationship is defined based on a virtual object;associate, with a coordinate system of a representation of the anatomy,the pose of the anatomy, the pose of the surgical tool, and therelationship; update the association with the coordinate system of therepresentation of the anatomy in response to motion of the anatomywithout interrupting operation of the surgical device during a surgicalprocedure; divide a workspace of the surgical device into a firstsubspace and a second subspace; and control the surgical device using ahybrid control scheme comprising providing admittance control when thesurgical tool is positioned in the first subspace and impedance controlwhen the surgical tool is positioned in the second subspace; whereinproviding the admittance control comprises modifying the position of thesurgical device based on the applied wrench; and wherein providing theimpedance control comprises providing haptic guidance by applying asecond wrench to the surgical device, based both on the relationshipbetween the pose of the anatomy and the surgical tool and on the appliedwrench, to a user to constrain the user's manipulation of the surgicaltool.
 15. The surgical apparatus of claim 14, wherein the surgicaldevice includes a first portion and a second portion, and wherein thefirst portion is configured to be moveable relative to the secondportion and the second portion is configured to be moveable relative tothe anatomy.
 16. The surgical apparatus of claim 15, wherein the firstportion of the surgical device comprises at least a portion of a seriallinkage, a parallel linkage, or a hybrid linkage.
 17. The surgicalapparatus of claim 15, further comprising a detection device coupled tothe surgical device.
 18. The surgical apparatus of claim 15, furthercomprising: a tracking element detectable by a detection device andconfigured to be disposed on the second portion of the surgical device.19. The surgical apparatus of claim 18, wherein a position of thetracking element is adjustable relative to the second portion of thesurgical device.
 20. The surgical apparatus of claim 18, wherein aposition of the tracking element is fixed relative to the second portionof the surgical device.
 21. The surgical apparatus of claim 18, whereinthe computing system is programmed to: determine a pose of the trackingelement.
 22. The surgical apparatus of claim 15, wherein the computingsystem is programmed to: determine the pose of the surgical tool basedat least in part on a pose of the first portion of the surgical device,a pose of the second portion of the surgical device, and a knowngeometric relationship between the surgical tool and the first portionof the surgical device.
 23. The surgical apparatus of claim 14, whereinthe computing system is programmed to: represent at least one of theanatomy, the surgical tool, and the relationship; and update therepresentation in response to the at least one of the motion of theanatomy and the motion of the surgical tool.
 24. The surgical apparatusof claim 14, wherein the computing system is programmed to: define afirst transformation for transforming a coordinate system of the anatomyto the coordinate system of the representation of the anatomy; anddefine a second transformation for transforming a coordinate system ofthe surgical tool to the coordinate system of the representation of theanatomy.
 25. The surgical apparatus of claim 24, wherein the computingsystem is programmed to: update the first transformation in response toat least one of the motion of the anatomy and the motion of the surgicaltool; and update the second transformation in response to at least oneof the motion of the anatomy and the motion of the surgical tool. 26.The surgical apparatus of claim 14, wherein the computing system isprogrammed to: position the virtual object relative to therepresentation of the anatomy.